請大家幫忙。我有這個代碼,這是我的課程序列化\反序列化應用程序設置。以XML格式存儲自定義應用程序設置
[XmlRoot("EvaStartupData")]
[Serializable]
public class MyConfigClass
{
public string ServerName { get; set; }
public string Database { get; set; }
public string UserName { get; set; }
public string UserLogin { get; set; }
public static void MyConfigLoad()
{
FileInfo fi = new FileInfo(myConfigFileName);
if (fi.Exists)
{
XmlSerializer mySerializer = new XmlSerializer(myConfigClass.GetType());
StreamReader myXmlReader = new StreamReader(myConfigFileName);
try
{
myConfigClass = (MyConfigClass)mySerializer.Deserialize(myXmlReader);
myXmlReader.Close();
}
catch (Exception e)
{
MessageBox.Show("Ошибка сериализации MyConfigLoad\n" + e.Message);
}
finally
{
myXmlReader.Dispose();
}
}
}
public static void MyConfigSave()
{
XmlSerializer mySerializer = new XmlSerializer(myConfigClass.GetType());
StreamWriter myXmlWriter = new StreamWriter(myConfigFileName);
try
{
mySerializer.Serialize(myXmlWriter, myConfigClass);
}
catch (Exception e)
{
MessageBox.Show("Ошибка сериализации MyConfigSave\n" + e.Message);
}
finally
{
myXmlWriter.Dispose();
}
}
}
系列化給予的我簡單的XML結構:
<ServerName>navuhodonoser</ServerName>
<Database>matrix</Database>
<UserName>Mr.Smith</UserName>
<UserLogin>neo</UserLogin>
我該怎麼修改我的類來得到這個XML結構:
<Connection ServerName="navuhodonoser" Database="matrix" ....>
@Alex:請點擊其中一個答案旁邊的複選標記以接受它。 – 2010-01-01 02:53:22
約翰,我沒有這樣的信譽單位投票。我是新來的,對不起。 – Victor 2010-01-01 10:23:04
對於將通過Xml串行器運行的類,不應該使用'[Serializable]'。不需要這個屬性,它的使用可能會令人困惑。 – Cheeso 2010-12-26 19:44:36