IMvcBuilder.AddJsonOptions 方法在 .NET Core 3.0 及更高版本中的弃用
将您的 ASP.NET Web API 项目从 .NET Core 2.0 升级到 3.0 后,您可能会遇到错误“'IMvcBuilder' does not contain a definition for 'AddJsonOptions'”。这是因为 Microsoft.AspNetCore.Mvc.Formatters.Json 包中 AddJsonOptions 扩展方法已弃用。
在 .NET Core 3.0 中,ASP.NET Core 团队不再默认包含 Json.NET。引入的新 JSON API 提供了更高的性能。但是,Json.NET 可以在 ASP.NET Core 3.0 项目中重新实现。
要使用 Json.NET 重新配置您的项目,请添加 NuGet 包 Microsoft.AspNetCore.Mvc.NewtonsoftJson。然后,在您的 Startup 的 ConfigureServices 方法中,使用以下步骤配置 MVC:
<code class="language-csharp">services.AddControllers().AddNewtonsoftJson();</code>
您还可以使用 AddNewtonsoftJson 方法的重载来配置 Json.NET 选项,就像您在 ASP.NET Core 2.x 中使用 AddJsonOptions 一样。
<code class="language-csharp">services.AddControllers().AddNewtonsoftJson(options => options.SerializerSettings.ContractResolver = new DefaultContractResolver());</code>
通过遵循这些步骤,您可以在 .NET Core 3.0 中检索 AddJsonOptions 方法以前提供的功能,同时整合新 JSON API 的性能增强。
以上是如何在 .NET Core 3.0 及更高版本中替换 IMvcBuilder.AddJsonOptions?的详细内容。更多信息请关注PHP中文网其他相关文章!