一尘不染

如何在Asp.net Core Web Api中将Newtonsoft.Json用作默认值?

json

我是 ASP.Net Web Api Core的 新手。我一直在使用 ASP.Net MVC
过去的几年里,我一直都写了ActionFilter,并用于JSON.NetSerializing数据导入JSON。因此,以这种方式,我用(据称快了400%)替换了Microsoft
JavaScript Serializer(比慢)。JSON.Net``JSON.Net

如何在 ASP.Net Web Api Core中 执行所有这些操作?在哪里更改 默认格式器

注意:如有任何疑问,请随时询问。

谢谢


阅读 817

收藏
2020-07-27

共1个答案

一尘不染

在.NET Core 3.0+中,包括NuGet软件包Microsoft.AspNetCore.Mvc.NewtonsoftJson,然后替换

services.AddControllers();

ConfigureServices

services.AddControllers().AddNewtonsoftJson();

这是.NET Core 3.0中的预发行版NuGet程序包,但是.NET Core 3.1中的完整发行版程序包。

编辑:
作为一个有用的更新:AddNewtonsoftJson()即使没有安装Microsoft.AspNetCore.Mvc.NewtonsoftJsonNuGet软件包,带有调用的代码也将编译并运行。如果这样做,它将在安装了
两个 转换器的情况下运行,但是默认情况下会使用System.Text.Json您可能不想要的转换器,因为您正在阅读此答案。因此,您
必须记住安装NuGet程序包 才能使其正常工作(如果清除并重做NuGet依赖项 请记住重新安装它)。

2020-07-27