原文: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. 区间DP lightoj 1031

    在此游戏中任意时刻的状态都是原始序列的一段子序列故: 定义d(i, j) : 表示原来序列的第i ~ j个元素组成的子序列,在双方都采取最优策略的情况下,先手得分的最大值. 状态转移时,需要枚举从左边 ...

  2. 【深入Java虚拟机】之一:Java内存模型与内存溢出

    [深入Java虚拟机]之:Java内存区域与内存溢出 高速缓存模型如下: ----------------------------------------------------分割线-------- ...

  3. HTTP协议学习---(二)基本认证

    什么是HTTP基本认证 桌面应用程序也通过HTTP协议跟Web服务器交互, 桌面应用程序一般不会使用cookie, 而是把 "用户名+冒号+密码"用BASE64编码的字符串放在ht ...

  4. 数据库连接池的选择 Druid

    我先说说数据库连接 数据库大家都不陌生,从名字就能看出来它是「存放数据的仓库」,那我们怎么去「仓库」取东西呢?当然需要钥匙啦!这就是我们的数据库用户名.密码了,然后我们就可以打开门去任意的存取东西了. ...

  5. Leetcode Find the Duplicate Number

    最容易想到的思路是新开一个长度为n的全零list p[1~n].依次从nums里读出数据,假设读出的是4, 就将p[4]从零改成1.如果发现已经是1了,那么这个4就已经出现过了,所以他就是重复的那个数 ...

  6. 【BZOJ-1176&2683】Mokia&简单题 CDQ分治

    1176: [Balkan2007]Mokia Time Limit: 30 Sec  Memory Limit: 162 MBSubmit: 1854  Solved: 821[Submit][St ...

  7. 【BZOJ-2756】奇怪的游戏 最大流 + 分类讨论 + 二分

    2756: [SCOI2012]奇怪的游戏 Time Limit: 40 Sec  Memory Limit: 128 MBSubmit: 2925  Solved: 792[Submit][Stat ...

  8. java 基础拾漏

    1.java语言支持的类型非为两类:基础类型(primitive Type) 和引用类型(Reference Type),基础类型8种 2.数组元素的类型是基本类型中的整数类型(byte,short, ...

  9. 【bzoj2038】 小Z的袜子(hose)

    http://www.lydsy.com/JudgeOnline/problem.php?id=2038 (题目链接) 转自:http://blog.csdn.net/bossup/article/d ...

  10. Teamviewer11现在无法捕捉屏幕画面。这可能是由于快速的用户切换或远程桌面会话断开/最小化。

    如果你用“远程桌面”连过去开启Teamviewer的话,当你退出“远程桌面”后,外网用Teamviewer连接就会出现这个问题. 解决方法: 不用远程连接过去开启Teamviewer,直接在在电脑本机 ...