小编Ahm*_*man的帖子

反序列化 NodaTime LocalDate 时出现异常

我在反序列化包含 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)

c# serialization json nodatime

3
推荐指数
1
解决办法
2090
查看次数

标签 统计

c# ×1

json ×1

nodatime ×1

serialization ×1