[Serializable()]
public class A
{
[XmlArrayAttribute("Item")]
public List<B> items;
}
[Serializable()]
[XmlType(TypeName = "Item")]
public class B
{
}
序列化之后,我发现我有类似
的东西<Item>
<Item> **** </Item>
<Item> **** </Item>
*****
</item>
但我只想要
<Item> **** </Item>
<Item> **** </Item>
如何获得它?
答案 0 :(得分:5)
public class A
{
[XmlElement("Item")]
public List<B> items;
}
public class B
{
}
请注意,您不需要[Serializable]
属性。它仅用于binary serialization并被XmlSerializer忽略,这是我怀疑您正在使用的内容,即使您的问题中已经明确说明了这一点。另外为了更好的封装,我建议你使用属性而不是字段。还有一句话:C#中的标准命名约定规定属性名称应以大写字母开头。