Maison > développement back-end > C++ > Comment puis-je désérialiser JSON avec des clés dynamiques en C# ?

Comment puis-je désérialiser JSON avec des clés dynamiques en C# ?

Patricia Arquette
Libérer: 2025-01-17 10:27:09
original
561 Les gens l'ont consulté

How Can I Deserialize JSON with Dynamic Keys in C#?

Gestion de la désérialisation JSON des clés dynamiques en C#

Lors du traitement des données JSON, la rencontre de clés dynamiques peut entraîner des problèmes de désérialisation. Considérez la chaîne JSON suivante :

<code class="language-json">{
    "daily": {
        "1337990400000": 443447,
        "1338076800000": 444693,
        "1338163200000": 452282,
        "1338249600000": 462189,
        "1338336000000": 466626
    }
}</code>
Copier après la connexion

Dans cette chaîne, la clé "quotidienne" est statique, mais la clé sous-jacente est dynamique et ne peut pas être prédite lors de la désérialisation. Pour résoudre ce problème, nous pouvons profiter de la puissance des objets dynamiques.

En utilisant la classe JavaScriptSerializer, nous pouvons créer un objet dynamique comme indiqué ci-dessous :

<code class="language-csharp">dynamic deser = new JavaScriptSerializer().Deserialize<dynamic>(val);</code>
Copier après la connexion

Cette désérialisation créera un objet dynamique deser qui pourra accéder aux propriétés JSON. Pour accéder aux données quotidiennes, nous pouvons utiliser la déclaration suivante :

<code class="language-csharp">dynamic justDaily = deser["daily"];</code>
Copier après la connexion
L'objet

justDaily représente désormais les données quotidiennes et ses clés dynamiques sont accessibles. Pour parcourir les clés et leurs valeurs nous pouvons utiliser le code suivant :

<code class="language-csharp">foreach (string key in justDaily.Keys)
    Console.WriteLine(key + ": " + justDaily[key]);</code>
Copier après la connexion

Cela affichera les clés dynamiques et leurs valeurs correspondantes. En utilisant des objets dynamiques, nous pouvons désérialiser efficacement les données JSON même lorsque des clés dynamiques sont rencontrées.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal