【发布时间】:2011-04-03 05:37:40
【问题描述】:
我有一个返回 XML 响应的 REST-ful WCF 服务。它由正确序列化和反序列化的对象组成,一个例外是节点上的 List 属性未正确反序列化。 XML 看起来像:
<ShippingGroups>
<ShippingGroup>
<ShippingGroupId>
b0b4d8a4-ff1f-4f02-a47c-263ef8ac861b</ShippingGroupId>
<ShippingAddressId>
63c0b52c-b784-4c27-a3e8-8adafba36add</ShippingAddressId>
<LineItemIds xmlns:a="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<a:string>ccc0f986-52d5-453e-adca-8ff4513c1d84</a:string>
</LineItemIds>
</ShippingGroup>
出现问题是因为我的 C# 类反序列化此 XML 需要一个 List LineItemIds。我可以通过手动删除该命名空间并删除 .
有没有其他方法可以解决这个问题,它看起来像:
<ShippingGroups>
<ShippingGroup>
<ShippingGroupId>
b0b4d8a4-ff1f-4f02-a47c-263ef8ac861b</ShippingGroupId>
<ShippingAddressId>
63c0b52c-b784-4c27-a3e8-8adafba36add</ShippingAddressId>
<LineItemIds>
<string>ccc0f986-52d5-453e-adca-8ff4513c1d84</string>
</LineItemIds>
</ShippingGroup>
【问题讨论】:
-
如何反序列化消息。该命名空间由数据协定序列化程序添加。
-
如果您还可以展示您的 DataContract 是如何定义的,那可能会有所帮助。
标签: xml wcf rest serialization