我对 xml 序列化有一个奇怪的要求。
请参阅以下 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());
}
}
}
任何人都可以帮助我完成任务吗?也许以完全不同的方式?提前致谢!!