Newtonsoft json的DeserializeObject在根元素为类名称时无法解析json消息。
在这种情况下,Amount属性为
var json = " {\r\n \"amount\": {\r\n \"currency\": \"EUR\",\r\n \"value\": 99792\r\n }\r\n}";
var amount = JsonConvert.DeserializeObject<Amount>(json)
和类
class Amount
{
[JsonProperty("value")]
public decimal? Value { get; set; }
[JsonProperty("currency")]
public string Currency { get; set; }
}
在这种情况下,Amount属性为
null
。问题在于金额嵌套在更复杂的JSON中,我发现它始终为空,因为它以“amount”开头。当然,我尝试在Amount类中使用一些注释,例如[DataContract]和[JsonObject],但仍然为空。
在这种情况下: var json = "{\r\n \"currency\": \"EUR\",\r\n \"value\": 99792\r\n }";
第一种情况中,json已经被解析。问题是如何反序列化该json?