C# 如何构造对象以序列化同一父级下的类似元素

C# 如何构造对象以序列化同一父级下的类似元素,c#,asp.net-mvc,C#,Asp.net Mvc,序列化时,如何将相同元素的集合放置在父元素下: 序列化会产生以下结果: <Vehicle> <Type color="red" speed="50mph">Ford</Type> </Vehicle> <Vehicle> <Type color="blue" speed="70mph">Toyota</Type> </Vehicle> 我尝试了类似的方法,但产生了错误: [XmlA

序列化时,如何将相同元素的集合放置在父元素下:

序列化会产生以下结果:

<Vehicle>
    <Type color="red" speed="50mph">Ford</Type>
</Vehicle>

<Vehicle>
    <Type color="blue" speed="70mph">Toyota</Type>
</Vehicle>
我尝试了类似的方法,但产生了错误:

[XmlArray("Vehicle")]
ArrayItem("Vehicles")]
public List<Vehicle> Vehicles { get; set; }
[XmlArray(“车辆”)]
ArrayItem(“车辆”)]
公共列表车辆{get;set;}

假设您的意思是

<Vehicles>
    <Vehicle>
        <Type color="red" speed="50mph">Ford</Type>
    </Vehicle>

    <Vehicle>
        <Type color="blue" speed="70mph">Toyota</Type>
    </Vehicle>
</Vehicles>

河流浅水处
丰田
你几乎成功了

[XmlArray(“车辆”)]
公共列表车辆{get;set;}

您这样做有什么原因吗?您试图做的基本上意味着一辆车可以同时拥有两种类型。假设您有这个XML,反序列化对象在这种情况下会是什么样子?我将XML发送到第三方应用程序,它以这种方式解析数据
[XmlArray("Vehicle")]
ArrayItem("Vehicles")]
public List<Vehicle> Vehicles { get; set; }
<Vehicles>
    <Vehicle>
        <Type color="red" speed="50mph">Ford</Type>
    </Vehicle>

    <Vehicle>
        <Type color="blue" speed="70mph">Toyota</Type>
    </Vehicle>
</Vehicles>
[XmlArray("Vehicles")]
public List<Vehicle> Vehicles { get; set; }