我需要使用camelCase格式化来自Web API 2的json响应,因此我已将以下行添加到基本控制器类的构造函数中:
GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
这可行,但会导致Dnn(基于它的Asp.net Framework 4.5应用程序)出现一些问题。
我还尝试通过ApiController的ActionContext属性进行设置:
ActionContext.ControllerContext.Configuration.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
但是配置对象始终为null。
是否有一种仅为WebAPI配置JsonFormatters的方法?我意识到我可以用属性来修饰每个属性,这些属性改变了Newtonsoft将输出Json对象的情况,但是我真的不想为我所有的API资源都这样做。