c# json 序列化如何去掉null值

要将一个对象序列化,可是如果对象的属性为null的时候,我们想将属性为null的都去掉。

在这里我使用Newtonsoft.Json.dll

记录一下序列化以及反序列化

json字符串转对象

Model model=JsonConvert.DeserializeObject<Model>(val);

将对象转化为json格式字符串

string jsonString = JsonConvert.SerializeObject(obj);

那么如何序列化为json时过滤掉NULL呢??

var jsonSetting = new JsonSerializerSettings {NullValueHandling = NullValueHandling.Ignore};

var json = JsonConvert.SerializeObject(data, Formatting.Indented, jsonSetting);

直接这样JsonConvert.SerializeObject(obj);序列化结果

"MemberQuery": {
      "PhoneNumber": "13222222222",
      "Name": "test",
      "MF": "",
      "BirthDate": "01/01/2017",
      "MaritalStatus": null,
      "Country": null
}

过滤掉NULL序列化结果:

"MemberQuery": {
    "PhoneNumber": "13222222222",
    "Name": "test",
    "MF": "",
    "BirthDate": "01/01/2017"
}

 

此随笔乃本人学习工作记录,如有疑问欢迎在下面评论,转载请标明出处。

如果对您有帮助请动动鼠标右下方给我来个赞,您的支持是我最大的动力。

 

posted @ 2017-09-13 08:52  huangenai  阅读(14903)  评论(2编辑  收藏  举报