[英]How to set json format in ResponseType attribute (asp.net webapi)?
我的控制器的操作返回IHttpActionResult。 在項目中,我使用snake_case作為json格式,因此將自定義ContractResolver添加到json設置中:
JsonSerializerSettings = new JsonSerializerSettings { ContractResolver = new SnakeCasePropertyNamesContractResolver() };
這就是我格式化回復的方式:
return new JsonResult<UserInfoModel>(new UserInfoModel(user.UserInfo), JsonSerializerSettings, Encoding.Unicode, this);
對於自動生成的文檔,我將[ResponseType]屬性添加到方法中。 但是文檔使用camelCase格式表示響應示例。
如何在ResponseType屬性中設置json格式?
您是否在global.asax.vb中嘗試了以下操作:
GlobalConfiguration.Configuration.Formatters.Clear()
GlobalConfiguration.Configuration.Formatters.Add(New JsonMediaTypeFormatter())
WebApiConfig.Register(GlobalConfiguration.Configuration)
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters)
找到一個解決方案:
加
var jsonFormatter = config.Formatters.OfType<JsonMediaTypeFormatter>().First();
jsonFormatter.SerializerSettings.ContractResolver = new SnakeCasePropertyNamesContractResolver();
config.Formatters.Add(new JsonMediaTypeFormatter());
到WebApiConfig.cs
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.