0

考虑以下 C# 代码:

[XmlRoot]
public class A 
{
    [XmlArray]
    public List<B> ArrayOfBItems { get;set; }

}

public class B
{
    [XmlAttribute]
    public String Name { get;set; }
}

通过 XmlSerialzier 运行时,将产生以下内容:

<A>
    <B Name="Foo" />
    <B Name="Bar" />
</A>

除了重命名 B 类以更改在 XML 中输出的名称之外,我还能做什么?不允许将 XmlAttribute 添加到类。

4

1 回答 1

1
[XmlRoot]
public class A 
{
    [XmlElement("NewName")]
    public List<B> ArrayOfBItems { get;set; }

}

如果您将 xml 装饰从 XmlArray 更改为 XmlElement,您应该会得到预期的结果。

于 2012-06-13T01:06:28.827 回答