首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ok()函数.NET WebAPI上的自定义JSON序列化

Ok()函数.NET WebAPI上的自定义JSON序列化
EN

Stack Overflow用户
提问于 2017-02-09 18:59:29
回答 2查看 760关注 0票数 1

我有一个C# .NET WebAPI项目,我所有的API都是这样的:

代码语言:javascript
复制
[HttpGet]
public IHttpActionResult Get()
{
   var myComplexObject = BuildResponse();

   return Ok(myComplexObject);
}

Ok()函数目前负责将响应对象序列化为JSON字符串。我如何告诉框架使用自定义的JSON序列化程序而不是默认的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-02-09 19:18:24

如果希望对所有请求使用自定义序列化程序,则在WebApiConfig.cs中配置HttpConfiguration

代码语言:javascript
复制
// Add custom formatter - add at the top so it fires first!
// This leaves the old one in place so JsonValue/JsonObject/JsonArray still are handled
config.Formatters.Insert(0, new CustomJsonNetFormatter());

这里有一篇关于如何制作你自己的serailizer的文章

Using an alternate JSON Serializer in ASP.NET Web API

票数 1
EN

Stack Overflow用户

发布于 2017-02-09 19:23:45

通过调用OK()方法,可以创建新的OkNegotiatedContentResult。从那里你可以放入你的JsonSerializerSettings。

实际上,当您调用OK(T content)方法时,它将帮助您创建新的OkNegotiatedContentResult对象。它会在那里包装你的响应对象。所以你可以直接使用它。希望能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42134875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档