Maison >développement back-end >C++ >Qu'est-il arrivé à « AddJsonOptions » dans .NET Core 3.0 et comment configurer la sérialisation JSON maintenant ?
Suppression de la méthode AddJsonOptions
et de la méthode de configuration de la sérialisation JSON dans .NET Core 3.0
Après la mise à niveau de .NET Core 2.0 vers 3.0, les développeurs ont constaté que la méthode d'extension IMvcBuilder
manquait dans l'interface AddJsonOptions
. Cet article explique les raisons de la suppression de cette méthode et décrit le mécanisme de configuration alternatif recommandé.
Changements entre Json.NET et ASP.NET Core 3.0
Dans le passé, ASP.NET Core utilisait Json.NET comme bibliothèque de sérialisation JSON par défaut. Cependant, dans la version 3.0, le framework n'utilise plus Json.NET par défaut et introduit à la place une nouvelle API JSON optimisée en termes de performances.
Nouveau mécanisme de configuration
Pour continuer à utiliser Json.NET dans .NET Core 3.0, les développeurs doivent ajouter une référence au Microsoft.AspNetCore.Mvc.NewtonsoftJson
package NuGet. Ensuite, dans la classe Startup
, modifiez la configuration MVC comme suit :
<code class="language-csharp">services.AddControllers() .AddNewtonsoftJson();</code>
Cette configuration permettra au contrôleur MVC d'utiliser Json.NET. La méthode AddNewtonsoftJson
fournit des surcharges qui permettent aux développeurs de définir des options Json.NET personnalisées, similaires à la méthode AddJsonOptions
dans les versions précédentes. Par exemple :
<code class="language-csharp">services.AddControllers() .AddNewtonsoftJson(options => { options.SerializerSettings.ContractResolver = new DefaultContractResolver(); });</code>
Pour résumer, bien que la méthode AddJsonOptions
ne soit plus disponible dans .NET Core 3.0, les développeurs peuvent facilement réintroduire Json.NET en installant le package NuGet et en mettant à jour la configuration MVC dans la classe Startup
. Cela garantit la compatibilité avec les anciens projets et l'accès à toutes les fonctionnalités de Json.NET.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!