一尘不染

如何在MVC 4 Web API中为Json.NET设置自定义JsonSerializerSettings?

c#

我知道ASP.NET Web
API本机使用Json.NET来(反序列化)对象,但是有没有一种方法可以指定要使用的JsonSerializerSettings对象?

例如,如果我想将type信息包括在序列化的JSON字符串中怎么办?通常,我会将设置注入到.Serialize()调用中,但是Web
API会以静默方式进行操作。我找不到手动注入设置的方法。


阅读 552

收藏
2020-05-19

共1个答案

一尘不染

您可以JsonSerializerSettings使用对象中的Formatters.JsonFormatter.SerializerSettings属性来自定义HttpConfiguration

例如,您可以在Application_Start()方法中执行此操作:

protected void Application_Start()
{
    HttpConfiguration config = GlobalConfiguration.Configuration;
    config.Formatters.JsonFormatter.SerializerSettings.Formatting =
        Newtonsoft.Json.Formatting.Indented;
}
2020-05-19