List xmlserializer反序列化包含属性的列表

List xmlserializer反序列化包含属性的列表,list,deserialization,xmlserializer,xml-attribute,List,Deserialization,Xmlserializer,Xml Attribute,我有xml,结构的一部分如下所示: <IDList> <ValuesList ID="1"> <Value>1</Value> <Value>2</Value> <Value>3</Value> </ValuesList> <ValuesList ID="2"> <Value>1

我有xml,结构的一部分如下所示:

<IDList>
    <ValuesList ID="1">
        <Value>1</Value>
        <Value>2</Value>
        <Value>3</Value>
    </ValuesList>
    <ValuesList ID="2">
        <Value>1</Value>
        <Value>2</Value>
        <Value>3</Value>
    </ValuesList>
</IDList>

1.
2.
3.
1.
2.
3.
xmlserializer的模型类应该是什么,这样我才能正确地反序列化它? 在懒惰的层面上,这很容易:

    [XmlArray("IDList")]
    [XmlArrayItem("ValuesList")]
    public List<CValuesList> idList = new List<CValuesList>();
[XmlArray(“IDList”)]
[XmlArrayItem(“价值列表”)]
public List idList=new List();
但是,当数组元素有额外的xml属性时,我该怎么做呢

我试着按照如下所示的方式进行ot:


但这对我不起作用。数组的元素还没有被反序列化。

没有简单的方法可以做到这一点

  • 一个好的解决方案是创建一个包含列表和属性的对象,并继承/实现IXmlSerializable

  • 我在这个网站上看到了一些快速而肮脏的方式:。由于对象不是从ISerializable继承的,因此序列化程序不会将其序列化为列表