U3DC.COM | 优三帝研究院

Menu

Json.Net进行序列化反序列化(三)数据不匹配不报错?

默认设置的情况下,如果获取的数据串跟我们本地的字段数据不匹配,是不会报错的,这就会带来困扰,json.net其实可以通过配置来实现成员缺失时报错。

public class Account
{
    public string FullName { get; set; }
    public bool Deleted { get; set; }
}
string json = @"{
  'FullName': 'Dan Deleted',
  'Deleted': true,
  'DeletedDate': '2013-01-20T00:00:00'
}";

try
{
    JsonConvert.DeserializeObject<Account>(json, new JsonSerializerSettings
    {
        MissingMemberHandling = MissingMemberHandling.Error
    });
}
catch (JsonSerializationException ex)
{
    Console.WriteLine(ex.Message);
    // Could not find member 'DeletedDate' on object of type 'Account'. Path 'DeletedDate', line 4, position 23.
}
打赏
— 于 共写了527个字
— 文内使用到的标签:

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据