我在反序列化包含 JSON 序列化 LocalDate 对象的 JSON 字符串时遇到异常(请参阅本问题末尾的 JSON 片段)。
这就是我反序列化的方式:
var settings = new JsonSerializerSettings();
settings.ConfigureForNodaTime(DateTimeZoneProviders.Tzdb);
var output = JsonConvert.DeserializeObject<MyObject>(json, settings);
Run Code Online (Sandbox Code Playgroud)
我看到这个异常消息:
NodaTime.Utility.InvalidNodaDataException:“解析 LocalDate 时出现意外标记。需要字符串,得到 StartObject。'
这是 MyObject 类:
class MyObject
{
public LocalDate Date { get; set; }
public string AnotherProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这是我尝试反序列化的 JSON 片段:
{
"Date": {
"Calendar": {
"Id": "ISO",
"Name": "ISO",
"MinYear": -9998,
"MaxYear": 9999,
"Eras": [{
"Name": "BCE"
}, {
"Name": "CE"
}]
},
"Year": 2017,
"Month": 7,
"Day": 10,
"DayOfWeek": …Run Code Online (Sandbox Code Playgroud)