Json.NET 将“不区分大小写的属性反序列化”列为宣传的功能之一。我已经阅读过,将首先尝试匹配指定属性的大小写,如果未找到匹配项,则执行不区分大小写的搜索。然而,这似乎不是默认行为。请参见以下示例:
var result =
JsonConvert.DeserializeObject<KeyValuePair<int, string>>(
"{key: 123, value: \"test value\"}"
);
// result is equal to: default(KeyValuePair<int, string>)
如果 JSON 字符串被更改以匹配属性的大小写(“Key”和“Value”与“key”和“value”),那么一切都很好:
var result =
JsonConvert.DeserializeObject<KeyValuePair<int, string>>(
"{Key: 123, Value: \"test value\"}"
);
// result is equal to: new KeyValuePair<int, string>(123, "test value")
有没有办法执行不区分大小写的反序列化?