1
我對xml序列化有一個奇怪的要求。IXmlSerializable和XmlRootAttribute
請參閱下面的C#代碼(由於變量'rootName'超出了範圍而無法編譯)。我的意圖是讓我的類GeneralData成爲'一般'。這意味着可以根據類構造函數的輸入參數將此類序列化爲具有不同根元素的不同XML字符串。
[XmlRoot(ElementName = rootName)]
public class GeneralData : Dictionary<String, Object>, IXmlSerializable
{
public string rootName;
public GeneralData(string rootName)
{
this.rootName = rootName;
}
public System.Xml.Schema.XmlSchema GetSchema()
{
throw new NotImplementedException();
}
public void ReadXml(System.Xml.XmlReader reader)
{
throw new NotImplementedException();
}
public void WriteXml(System.Xml.XmlWriter writer)
{
foreach (var key in Keys)
{
var value = base[key];
writer.WriteElementString(key, value.ToString());
}
}
}
任何人都可以幫助我完成任務嗎?也許以完全不同的方式? 在此先感謝!
感謝您的建議。我目前只是將它用作解決方法。我將嘗試重構一些代碼以避免下次出現這個問題。 –