原文:http://blog.csdn.net/xxj_jing/article/details/49508557

版权声明:本文为博主原创文章,未经博主允许不得转载。

.net mvc web api 返回 json 内容时,好多属性为null的没必要下发。

下面看下怎么过滤值为null的属性

.响应内容(过滤前)

{"msg":"初始化成功!","code":"","success":true,data:null}

.响应内容(过滤后)

{"msg":"初始化成功!","code":"","success":true}

[csharp] view plain copy
using System.Net.Http.Formatting;
using System.Web.Http; namespace xxxxxxx
{
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
...... //默认返回 json
GlobalConfiguration.Configuration.Formatters
.JsonFormatter.MediaTypeMappings.Add(
new QueryStringMapping("datatype", "json", "application/json"));
//返回格式选择
GlobalConfiguration.Configuration.Formatters
.XmlFormatter.MediaTypeMappings.Add(
new QueryStringMapping("datatype", "xml", "application/xml"));
//json 序列化设置
GlobalConfiguration.Configuration.Formatters
.JsonFormatter.SerializerSettings = new Newtonsoft.Json.JsonSerializerSettings()
{
NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore //设置忽略值为 null 的属性
};
}
}
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

 

.net mvc web api 返回 json 内容时,好多属性为null的没必要下发。

下面看下怎么过滤值为null的属性

 

1.响应内容(过滤前)

{"msg":"初始化成功!","code":"","success":true,data:null}

 

2.响应内容(过滤后)

{"msg":"初始化成功!","code":"","success":true}

[csharp] view plain copy

 
  1. using System.Net.Http.Formatting;
  2. using System.Web.Http;
  3. namespace xxxxxxx
  4. {
  5. public static class WebApiConfig
  6. {
  7. public static void Register(HttpConfiguration config)
  8. {
  9. ......
  10. //默认返回 json
  11. GlobalConfiguration.Configuration.Formatters
  12. .JsonFormatter.MediaTypeMappings.Add(
  13. new QueryStringMapping("datatype", "json", "application/json"));
  14. //返回格式选择
  15. GlobalConfiguration.Configuration.Formatters
  16. .XmlFormatter.MediaTypeMappings.Add(
  17. new QueryStringMapping("datatype", "xml", "application/xml"));
  18. //json 序列化设置
  19. GlobalConfiguration.Configuration.Formatters
  20. .JsonFormatter.SerializerSettings = new Newtonsoft.Json.JsonSerializerSettings()
  21. {
  22. NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore //设置忽略值为 null 的属性
  23. };
  24. }
  25. }
  26. }

.net mvc web api 返回 json 内容,过滤值为null的属性的更多相关文章

  1. C# .net mvc web api 返回 json 内容,过滤值为null的属性

    在WebApiConfig.Register 中增加一段 #region 过滤值为null的属性 //json 序列化设置 GlobalConfiguration.Configuration.Form ...

  2. .net mvc web api 返回 json 内容时过滤值为null的属性

    1.响应内容(过滤前) {"msg":"初始化成功!","code":"","success":tr ...

  3. MVC web api 返回JSON的几种方式,Newtonsoft.Json序列化日期时间去T的几种方式。

    原文链接:https://www.muhanxue.com/essays/2015/01/8623699.html MVC web api 返回JSON的几种方式 1.在WebApiConfig的Re ...

  4. ASP.NET WEB API 返回JSON 出现2个双引号问题

    前言          在使用ASP.NET WEB API时,我想在某个方法返回JSON格式的数据,于是首先想到的就是手动构建JSON字符串,如:"{\"result\" ...

  5. .Net Web Api返回Json数据中原对象变量名大小写问题

    这两天在工作中使用SignalR的WebSocket做数据实时传递的功能开发,在后端主动向前端广播数据以Json传递时,前端获取的Json中对应类的变量名首字母默认传递的是大写.而前端一直获取到的后台 ...

  6. Web API返回JSON数据

    对Web API新手来说,不要忽略了ApiController 在web API中,方法的返回值如果是实体的话实际上是自动返回JSON数据的例如: 他的返回值就是这样的: { "Conten ...

  7. web Api 返回json 的两种方式

    web api写api接口时默认返回的是把你的对象序列化后以XML形式返回,那么怎样才能让其返回为json呢,下面就介绍两种方法: 方法一:(改配置法) 找到Global.asax文件,在Applic ...

  8. Web API 返回json文件的2中不用方式

    //方法一:直接返回序列化后的json文件 public static HttpResponseMessage ConvertToJson(this Object obj) { String str= ...

  9. Asp.net Web API 返回Json对象的两种方式

    这两种方式都是以HttpResponseMessage的形式返回, 方式一:以字符串的形式 var content = new StringContent("{\"FileName ...

随机推荐

  1. 单例模式(Singleton Pattern)

    意图 保证一个类仅有一个实例,并提供一个该实例的全局访问点 可将一个实例扩展到n个实例.限定某类最多只能创建n个实例. 双重锁定实现单例模式 C# public sealed class Single ...

  2. 如何生成HTMLTestRunner报告

    今天,学习了如何生成HTMLTestRunner测试报告. 接上篇文章,对于unittest框架,运行后,测试结果不便于查看,同时多个case存在的时候,可能会导致case result记录不正确的情 ...

  3. Yii日志记录Logging

    .Yii::getLogger()->log($message, $level, $category = 'application') .Yii::trace($message, $catego ...

  4. perl reverse 函数

    参考 http://www.perlcn.com/perlbc/perljc/315.html 使用reverse操作符时,perl会先计算变量的值,也就是=右边的值,然后再进行复制,如果revers ...

  5. Android studio:从Eclipse迁移到Android Studio【一】

    转载:http://www.apkbus.com/forum.php?mod=viewthread&tid=255061&extra=page%3D2%26filter%3Dautho ...

  6. 【BZOJ-4523】路由表 Trie树 + 乱搞

    4523: [Cqoi2016]路由表 Time Limit: 30 Sec  Memory Limit: 512 MBSubmit: 155  Solved: 98[Submit][Status][ ...

  7. 树莓派启用root账户

    树莓派使用的linux是debian系统,所以树莓派启用root和debian是相同的. debian里root账户默认没有密码,但账户锁定. 当需要root权限时, 直接执行 sudo su 即可切 ...

  8. 动态添加和更改F7编辑器(div和editGrid列)

    //更改列编辑器 waf("#editGrid").wafGrid("setColumnConfig", "settlementType", ...

  9. 精通javascript(看书笔记)

    变量的类型检查 //检测类型 var str = "Hello World"; if (typeof str=="string") {//使用typeof来判断 ...

  10. 使用LaTeX编辑数学公式

    首先在博客园的页首html里添加以下代码: <script type="text/x-mathjax-config"> MathJax.Hub.Config({ tex ...