将带有已确认格式良好的对象的POST请求发送到使用Json.NET进行反序列化的WebApi2控制器时,未正确解析单个属性。
请求中发出的JSON如下:
{"ParentId":8,"Data":{"Description":"Estimated Man Hours ONSITE","ExternalItemKey":"Services:Man Hours","Quantity":0,"Price":150,"EstimatedCost":60},"ActualCost":60,"DateProvided":"2015-09-18T00:26:45.000Z","ReferencedQuotedDeliverableExternalGuid":"1b7e42be-670e-4d84-9600-15dff530363e","Notes":""}
Data.EstimatedCost值反序列化为0,可能因为某些原因没有被解析。正确解析所有其他值。
Json.NET的版本是6.0.0.0
答案 0 :(得分:0)
我找到的解决方案是使用以下语法标记无法反序列化的变量:
using Newtonsoft.Json;
public class Deliverable
{
[JsonProperty(Required = Required.Always)]
public decimal EstimatedCost { get; private set; }
}