问题描述
|
我已经调试了Rest Service一段时间了,并且我意识到,如果我发布(通过POST方法)此文件
<RegionDTO xmlns=\"http://www.mysite.com/api\">
<id>4</id>
<country_id>1</country_id>
<name>This is the name</name>
</RegionDTO>
我得到了这个“ 1”对象的填充:
RegionDTO.id-> 4
RegionDTO.name-> \“这是名字\”
RegionDTO.country_id->空
如果我将这个xml的元素重新排序为:
<RegionDTO xmlns=\"http://www.mysite.com/api\">
<country_id>1</country_id>
<id>4</id>
<name>This is the name</name>
</RegionDTO>
我得到正确填充的“ 1”对象:
RegionDTO.id-> 4
RegionDTO.name-> \“这是名字\”
RegionDTO.country_id-> 1
技术规格? .NET 4,自托管
解决方法
终于我找到了答案:
WCF使用的默认序列化器为\“ DataContractSerializer \”。默认情况下,本地元素按字母顺序映射
参考:http://www.pluralsight-training.net/microsoft/olt/Course/Toc.aspx?n=wcf-design-concepts(在“ [DataContract]映射”一章中)