.net XML序列化:如何指定数组的根元素和子元素名称

Jer*_*emy 5 .net c# xml-serialization

考虑以下可序列化类:

class Item {...}
class Items : List<Item> {...}
class MyClass
{
   public string Name {get;set;}
   public Items MyItems {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

我希望序列化输出看起来像:

<MyClass>
    <Name>string</Name>
    <ItemValues>
        <ItemValue></ItemValue>
        <ItemValue></ItemValue>
        <ItemValue></ItemValue>
    </ItemValues>
</MyClass>
Run Code Online (Sandbox Code Playgroud)

请注意,元素名称ItemValues和ItemValue与类名称Item和Items不匹配,假设我无法更改Item或Items类,是否有任何原因可以通过修改MyClass类来指定我想要的元素名称?

Mar*_*ell 6

public class MyClass
{
    public string Name {get;set;}
    [XmlArray("ItemValues")]
    [XmlArrayItem("ItemValue")]
    public Items MyItems {get;set;}
}
Run Code Online (Sandbox Code Playgroud)