Jus*_*rsh 28 wcf datacontractserializer
问题:
我有一个WCF服务设置作为来自外部系统的呼叫的端点.该调用是发送普通的xml.我正在通过使用RequestBuilder从Fiddler向服务发送调用来测试系统.
问题是我的所有字段都被反序列化,但两个字段除外.price_retail和price_wholesale.
我错过了什么?所有其他字段反序列化没有问题 - 服务响应.只是这些领域.
XML消息:
<widget_conclusion>
<list_criteria_id>123</list_criteria_id>
<list_type>consumer</list_type>
<qty>500</qty>
<price_retail>50.00</price_retail>
<price_wholesale>40.00</price_wholesale>
<session_id>123456789</session_id>
</widget_conclusion>
Run Code Online (Sandbox Code Playgroud)
服务方式:
public string WidgetConclusion(ConclusionMessage message)
{
var priceRetail = message.PriceRetail;
}
Run Code Online (Sandbox Code Playgroud)
消息类:
[DataContract(Name = "widget_conclusion", Namespace = "")]
public class ConclusionMessage
{
[DataMember(Name = "list_criteria_id")]
public int CriteriaId { get; set;}
[DataMember(Name = "list_type")]
public string ListType { get; set; }
[DataMember(Name = "qty")]
public int ListQuantity { get; set; }
[DataMember(Name = "price_retail")]
public decimal PriceRetail { get; set; }
[DataMember(Name = "price_wholesale")]
public decimal PriceWholesale { get; set; }
[DataMember(Name = "session_id")]
public string SessionId { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
tom*_*asr 50
您的邮件的字段顺序错误.DataContracts默认为按字母顺序排序,而不是声明顺序; 并期望XML元素按顺序到达; 通常会丢弃乱序元素.
修复合同以明确指定正确的顺序(使用DataMemberAttribute的Order属性)或确保客户端在正确的顺序中发送它们.
| 归档时间: |
|
| 查看次数: |
10056 次 |
| 最近记录: |