首页 >后端开发 >C++ >删除AddJsonOptions后如何在.NET Core 3.0中配置JSON序列化?

删除AddJsonOptions后如何在.NET Core 3.0中配置JSON序列化?

DDD
DDD原创
2025-01-23 01:17:08530浏览

How to Configure JSON Serialization in .NET Core 3.0 After the Removal of AddJsonOptions?

.NET Core 3.0 JSON 序列化配置指南:AddJsonOptions 方法的替代方案

从 .NET Core 2.0 升级到 3.0 后,默认的 JSON 处理机制已从 Json.NET 切换。这导致了 IMvcBuilder 中的 AddJsonOptions 扩展方法被移除。

变更说明

先前由 Microsoft.AspNetCore.Mvc.Formatters.Json NuGet 包提供的 AddJsonOptions 方法,允许开发者自定义 ASP.NET Core Web API 的 JSON 序列化选项。在 .NET Core 3.0 中,此功能已被新的 JSON API 所取代,该 API 侧重于提高性能。

在 .NET Core 3.0 中配置 Json.NET

尽管默认机制已变更,开发者仍然可以通过一些配置来使用 Json.NET:

  1. 安装 Microsoft.AspNetCore.Mvc.NewtonsoftJson NuGet 包。
  2. 修改 Startup 类中的 ConfigureServices 方法,以使用 Json.NET 配置 MVC:
<code class="language-csharp">services.AddControllers()
    .AddNewtonsoftJson();</code>

自定义 Json.NET 选项

要自定义 Json.NET 选项,请使用 AddNewtonsoftJson 方法的重载版本:

<code class="language-csharp">services.AddControllers()
    .AddNewtonsoftJson(options =>
    {
        options.SerializerSettings.ContractResolver = new DefaultContractResolver();
    });</code>

此示例将 ContractResolver 设置为确保序列化 JSON 的小写化。

以上是删除AddJsonOptions后如何在.NET Core 3.0中配置JSON序列化?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn