在 c# 中序列化主详细信息 XML

本文关键字:详细信息 XML 序列化 | 更新日期: 2023-09-27 18:32:04

我是XML的新手,基本上我有这样的类:

public class Items:List<string>
{
    private string _name;
    public string Product
    {
    get {return _name;}
    set {_name=value;}
    }
}

我想像这样基于此类序列化对象:

  <Items>
      <Product>product name</Product>
      <Item> A1 </Item>
      <Item> A2 </Item>
      <Item> A3 </Item>
      <Item> A4 </Item>
      <Item> A5 </Item>
   </Items>

我的问题是当我尝试序列化这个对象时,XML序列化程序忽略了产品元素,只得到了这个XML数据:

<Items>
   <Item> A1 </Item>
   <Item> A2 </Item>
   <Item> A3 </Item>
   <Item> A4 </Item>
   <Item> A5 </Item>
</Items>

任何人都可以帮助我获得正确格式的XML文档。

在 c# 中序列化主详细信息 XML

XmlSerializer(以及许多其他代码)将事物视为项目(独占)列表。不应对列表和属性进行子类化:应具有具有列表和属性的类型。

[XmlRoot("Items")]
public class Foo {
    public string Product {get;set;}
    private readonly List<string> items = new List<string>();
    [XmlElement("Item")]
    public List<string> Items {get{return items;}}
}