我正在使用DataContractSerializer将xml反序列化为列表。
xml结构如下:
<ArrayOfAttributes>
<Attributes>
<Type></Type>
<Value></Value>
<Name></Name>
</Attributes>
</ArrayOfAttributes>
Attributes类具有3个通过属性引用的字符串数据成员,它们是:
[DataMember(Order=0)]
Type
[DataMember(Order=1)]
Value
[DataMember(Order=2)]
Name
当WCF服务在XML中返回一个以上的Attributes元素时,将成功填充Name对象,但是如果仅返回1个Attributes元素,则Name的值将保持为空。
有人知道我在做什么错吗?
最佳答案
根据粘贴的XML,DataMember顺序似乎错误。
尝试
[DataMember(Order = 0)]
类型
[DataMember(Order = 1)]
名称
[DataMember(Order = 2)]
值
其他选择是
[DataMember]
类型
[DataMember]
名称
[DataMember]
值
尝试第二个,它将始终有效:)