Maison > développement back-end > C++ > Comment empêcher la désérialisation DateTime lors de l'analyse de JSON avec Json.NET ?

Comment empêcher la désérialisation DateTime lors de l'analyse de JSON avec Json.NET ?

DDD
Libérer: 2024-12-30 21:57:10
original
134 Les gens l'ont consulté

How to Prevent DateTime Deserialization When Parsing JSON with Json.NET?

Json.NET Désactive la désérialisation DateTime

Lors de l'analyse de JSON dans un JObject à l'aide de JObject.Parse, vous pouvez rencontrer une situation dans laquelle vous souhaitez conserver la représentation sous forme de chaîne brute de une valeur Date plutôt que de la convertir en un objet DateTime.

Pour y parvenir, JObject.Parse ne fournit pas de prise en charge directe pour la définition options de désérialisation. Cependant, vous pouvez utiliser une solution de contournement en créant un JsonReader avec les paramètres souhaités.

using (JsonReader reader = new JsonTextReader(new StringReader(j1.ToString())))
{
    reader.DateParseHandling = DateParseHandling.None;
    JObject o = JObject.Load(reader);
}
Copier après la connexion

Dans ce code, un JsonTextReader est créé et sa propriété DateParseHandling est définie sur None, indiquant qu'aucune analyse de date ne doit se produire. Ce JsonReader est ensuite utilisé comme entrée dans JObject.Load, qui analysera le JSON en fonction des paramètres fournis. Le JObject résultant, o, contiendra la représentation sous forme de chaîne brute de la valeur Date.

En utilisant cette approche, vous pouvez désactiver la désérialisation automatique de la date et obtenir la valeur de chaîne brute comme vous le souhaitez.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal