Je suis nouveau sur ASP.Net Web Api Core. J'utilise ASP.Net MVC depuis quelques années et j'ai toujours écrit un ActionFilter
et utilisé JSON.Net
Pour Serializing
données dans JSON
. Donc, de cette façon, j'ai remplacé le JavaScript Serializer
De Microsoft (qui est plus lent que JSON.Net
) Par JSON.Net
(Il est censé être 400% plus rapide).
Comment faire tout cela dans ASP.Net Web Api Core? Où changer le formateur par défaut?
Remarque: n'hésitez pas à demander si vous avez des questions.
Merci
ASP.NET Core utilise déjà JSON.NET car JavaScriptSerializer
n'est pas implémenté/porté sur .NET Core.
Microsoft.AspNetCore.Mvc
dépend de Microsoft.AspNetCore.Formatter.Json
qui dépend de Microsoft.AspNetCore.JsonPatch
, qui dépend de Newtonsoft.Json
(voir source ).
Cela n'est vrai que pour ASP.NET Core 1.0 à 2.2. ASP.NET Core 3.0 supprime la dépendance sur JSON.NET et utilise son propre sérialiseur JSON.
voici un extrait de code pour ajuster les paramètres d'une application de base .net
public void ConfigureServices(IServiceCollection services)
{
services
.AddMvc()
.AddJsonOptions(options => {
// send back a ISO date
var settings = options.SerializerSettings;
settings.DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat;
// dont mess with case of properties
var resolver = options.SerializerSettings.ContractResolver as DefaultContractResolver;
resolver.NamingStrategy = null;
});
}