重命名 XML 序列化中的类

本文关键字:序列化 XML 重命名 | 更新日期: 2023-09-27 18:37:02

请考虑以下 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 添加到类。

重命名 XML 序列化中的类

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

如果将 xml 修饰从 XmlArray 更改为 XmlElement,则应获得预期的结果。

相关文章: