ホームページ >バックエンド開発 >C++ >.NET Core 3.0 以降で IMvcBuilder.AddJsonOptions を置き換える方法

.NET Core 3.0 以降で IMvcBuilder.AddJsonOptions を置き換える方法

Patricia Arquette
Patricia Arquetteオリジナル
2025-01-23 01:32:09450ブラウズ

How to Replace IMvcBuilder.AddJsonOptions in .NET Core 3.0 and Beyond?

.NET Core 3.0 以降での IMvcBuilder.AddJsonOptions メソッドの非推奨

ASP.NET Web API プロジェクトを .NET Core 2.0 から 3.0 にアップグレードした後、「'IMvcBuilder' には '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 を追加します。次に、スタートアップの ConfigureServices メソッドで、次の手順を使用して MVC を構成します。

  1. services.AddControllers() を呼び出して、MVC コントローラーをセットアップします。
  2. AddNewtonsoftJson() を呼び出して、Json.NET を使用するように MVC を構成します。
<code class="language-csharp">services.AddControllers().AddNewtonsoftJson();</code>

ASP.NET Core 2.x で AddJsonOptions を使用するのと同じように、AddNewtonsoftJson メソッドのオーバーロードを使用して Json.NET オプションを構成することもできます。

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

これらの手順に従うことにより、新しい JSON API のパフォーマンス強化を組み込みながら、.NET Core 3.0 の AddJsonOptions メソッドによって以前に提供されていた機能を取得できます。

以上が.NET Core 3.0 以降で IMvcBuilder.AddJsonOptions を置き換える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。