标签:style blog http color 使用 数据
昨天项目中要部分Api的JSON格式需要特殊处理。最开始直接重写controller的JSON方法。经测试,当action直接返回数据的时候,不会调用Json方法。
然后找了各种方法,都不行。在群里问了。直到看到群友发的一个直接移除所有API的JSON格式方法的时候。图片如下:
然后就想到了Api的ActionFilterAttribute。就解决了自己的需求。
上代码。懒得写说明。
1 public class AppFilterAttribte : ActionFilterAttribute 2 { 3 public override void OnActionExecuting(System.Web.Http.Controllers.HttpActionContext actionContext) 4 { 5 foreach (var formatter in actionContext.ControllerContext.Configuration.Formatters) 6 { 7 JsonMediaTypeFormatter jsonFormatter = formatter as JsonMediaTypeFormatter; 8 if (jsonFormatter != null) 9 { 10 jsonFormatter.SerializerSettings.ContractResolver = new AppContractResolver(); //自己需要的处理方式 11 break; 12 } 13 } 14 base.OnActionExecuting(actionContext); 15 } 16 }
由于我使用的MVC版本Configuration没办法直接得到JsonFormatter,所以只好使用循环来取了!
在Action上配置如上的Filter就OK了。
web Api自定义部分Action的JSON格式输出,布布扣,bubuko.com
标签:style blog http color 使用 数据
原文地址:http://www.cnblogs.com/chongsha/p/3843965.html