首頁 >後端開發 >C++ >為什麼 ASP.NET Core 3.0 中缺少「IMvcBuilder.AddJsonOptions」以及如何設定 JSON 序列化?

為什麼 ASP.NET Core 3.0 中缺少「IMvcBuilder.AddJsonOptions」以及如何設定 JSON 序列化?

Patricia Arquette
Patricia Arquette原創
2025-01-23 01:36:09547瀏覽

Why is `IMvcBuilder.AddJsonOptions` Missing in ASP.NET Core 3.0 and How Can I Configure JSON Serialization?

ASP.NET Core 3.0 中 IMvcBuilder.AddJsonOptions 方法缺失及 JSON 序列化配置方案

問題描述

將 ASP.NET Web API 專案從 .NET Core 2.0 升級到 3.0 後,使用 IMvcBuilder.AddJsonOptions 會報錯,提示 IMvcBuilder 不再包含此擴充方法。

採用新的 JSON API

ASP.NET Core 3.0 預設不再使用 Json.NET,轉而採用新的高效能 JSON API。

重新配置 Json.NET (可選)

為了與舊專案相容,您可以重新配置專案使用 Json.NET:

  1. 安裝 Microsoft.AspNetCore.Mvc.NewtonsoftJson NuGet 套件。
  2. Startup.cs 檔案的 ConfigureServices 方法中加入以下程式碼:
<code class="language-csharp">services.AddControllers()
    .AddNewtonsoftJson();</code>
  1. 配置 Json.NET 選項:
<code class="language-csharp">services.AddControllers()
    .AddNewtonsoftJson(options =>
    {
        options.SerializerSettings.ContractResolver = new DefaultContractResolver();
    });</code>

以上是為什麼 ASP.NET Core 3.0 中缺少「IMvcBuilder.AddJsonOptions」以及如何設定 JSON 序列化?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn