Wcf 使用XmlArrayItemAttribute序列化数据工作不正常
我有一个DataContract,它是一个字符串数组:Wcf 使用XmlArrayItemAttribute序列化数据工作不正常,wcf,serialization,.net-4.0,Wcf,Serialization,.net 4.0,我有一个DataContract,它是一个字符串数组: [System.Xml.Serialization.XmlArrayAttribute(Order = 19)] [System.Xml.Serialization.XmlArrayItemAttribute("CardNumber", typeof(string), IsNullable = false)] [DataMember] public string[] Cards {get; set; } 正如我所读到的,它应该像这样序列化
[System.Xml.Serialization.XmlArrayAttribute(Order = 19)]
[System.Xml.Serialization.XmlArrayItemAttribute("CardNumber", typeof(string), IsNullable = false)]
[DataMember]
public string[] Cards {get; set; }
正如我所读到的,它应该像这样序列化:
<Cards>
<CardNumber>123123</CardNumber>
</Cards>
123123
但我仍然得到:
<Cards>
<string>123123</string>
</Cards>
123123
有什么问题吗?您可以改用CollectionDataContract。 首先,创建一个类:
[CollectionDataContract(ItemName="CardNumber")]
public class CardsList : List<string> { }
据此:
[DataMember(Name="Cards")]
public CardsList Cards {get; set; };
希望能有帮助
[DataMember(Name="Cards")]
public CardsList Cards {get; set; };