Maison >développement back-end >C++ >Comment C # Structs peut-il désérialiser efficacement les objets JSON complexes des API?

Comment C # Structs peut-il désérialiser efficacement les objets JSON complexes des API?

Linda Hamilton
Linda Hamiltonoriginal
2025-02-02 06:56:11844parcourir

How Can C# Structs Efficiently Deserialize Complex JSON Objects from APIs?

Utilisez la structure C # pour approfondir fortement l'objet JSON compliqué

Lorsque vous traitez avec des objets JSON complexes, il ne suffit souvent pas d'être transformé uniquement en une liste de types de base. Afin de gérer efficacement la structure imbriquée, la structure C # est recommandée.

Question:

L'objet JSON obtenu à partir de l'API du graphique Facebook n'est pas en mesure d'être sérialisé dans une liste d'objets en raison d'objets originaux non valides.

Solution:

Structure de définition: Créez une structure distincte pour représenter des objets JSON externes et internes. Par exemple, considérez une structure d'amis contenant une liste de structures Facebook Friends:

  1. a capitalisé JSON:
  2. Utiliser
pour séquencer JSON à la structure des amis:
<code class="language-csharp">public class Friends
{
    public List<FacebookFriend> data { get; set; }
}

public class FacebookFriend
{
    public string id { get; set; }
    public string name { get; set; }
}</code>
  1. Accès aux objets internes: JavaScriptSerializer Vous pouvez maintenant accéder à l'objet interne en itérant la liste de données de la structure des amis:
<code class="language-csharp">Friends facebookFriends = new System.Web.Script.Serialization.JavaScriptSerializer().Deserialize<Friends>(result);</code>
    Exemple:
  1. Sortie:
<code class="language-csharp">foreach (var item in facebookFriends.data)
{
    Console.WriteLine("id: {0}, name: {1}", item.id, item.name);
}</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!

Déclaration:
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