目标
获取一个名为“Item”的类,并将其序列化的XML输出为:
<Template><!--some properties --></Template>
问题
根节点是从实现IXmlSerializable的类名派生的。
// By the time I get here 'writer' already has a root node
public void WriteXml(XmlWriter writer)
{
writer.WriteStartElement("Template");
// write out the properties
writer.WriteEndElement();
}
所以我结束了看起来像
的XML<Item><Template><!-- some properties --></Template></Item>
问题
是否有属性,我可以覆盖的属性,或任何可以获得所需效果的内容(除了更改类名)?
谢谢!
感谢弗雷德里克的解决方案!
由于这个问题在我对@Frederik Gheysels回答的评论中有所回答,我想我会把它放在这里,所以它不会被埋没。
只需向您的类添加XmlRoot属性,这将更改根节点的输出xml。
示例:
[XmlRoot("Template")]
public class Item : IXmlSerializable
{
//Item's properties
}