Sérialisation JSON personnalisée dans ASP.NET MVC
Lorsque vous utilisez JSON ActionResult dans ASP.NET MVC, le comportement par défaut consiste à sérialiser l'énumération en une valeur au lieu de son nom de chaîne. Bien que JSON.net devrait être en mesure de résoudre ce problème, ce n'est peut-être pas le programme de sérialisation par défaut dans votre application.
Vérifiez le paramètre web.config
Contrairement à la vue générale, la définition du programme de sérialisation JSON par défaut dans web.config ne convient pas à ASP.NET MVC. En fait, ASP.NET MVC 4 utilise toujours JavascriptSerializer pour gérer les opérations JSON.
Implémentez JSON.net
Pour intégrer JSON.net dans MVC4, vous devez créer une classe JSONNetResult personnalisée. Veuillez vous référer aux articles suivants pour obtenir des conseils:
asp.net mvc et json.net
json.net en tant que programme de sérialisation JSON par défaut dans ASP.NET MVC 3-est-il possible?
-
Appliquer JSON.net au paramètre du contrôleur -
Pour appliquer JSON.net aux paramètres de fonctionnement du contrôleur pendant la liaison du modèle, veuillez créer votre propre implémentation ValueProviderFactory. Veuillez vous assurer d'enregistrer votre implémentation avec le code suivant:
Envisagez d'utiliser le jsonvalueproviderfactory construit construit ou référez-vous aux articles suivants pour en savoir plus d'informations:
asp.net mvc 3 -jsonvalueproderfactory <code class="language-csharp">ValueProviderFactories.Factories.Remove(ValueProviderFactories.Factories
.OfType<JsonValueProviderFactory>().Single());
ValueProviderFactories.Factories.Add(new MyJsonValueProviderFactory());</code>
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!