2012-06-13 92 views
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添加到类中。

回答

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

} 

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

+0

谢谢。这几乎就是我正在寻找的。 –