如何让XmlSerializer不序列化容器标签?
我有一个简单的对象图,我想序列化,我还没有找到解决这个问题的方法。 这里是:
[XmlRoot] public partial class MyData { private List itemsField; public MyData() { this.anyAttrField = new List(); this.itemsField = new List(); } [XmlElement(Type = typeof(MyDatum))] public List Items { get { return this.itemsField; } set { this.itemsField = value; } } }
这会产生以下XML:
...
我想删除“Items”容器标记来生成它:
...
我尝试了各种解决方案,但似乎无法找到解决方案。
在[XmlElement]
属性中指定元素名称:
[XmlElement("MyDatum", Type = typeof(MyDatum))] public List Items { // ... }
根据MSDN上的这篇文章 ,这将删除序列化项目周围的包装元素。