Lorsque vous essayez de séquencer l'objet JSON dans une liste d'objets, cela peut être difficile en raison de l'objet original non valide. Cet article fournira une solution à ce problème, afin que vous puissiez conduire avec succès à de tels objets JSON.
Considérez les objets JSON suivants, cela indique que la liste des amis Facebook obtenue via Graph API:
Pour discerner cet objet JSON, nous devons créer une structure qui correspond à son mode. Dans cet exemple, il s'agit d'une liste d'objets Facebookfriend:
<code>{ "data": [ { "id": "518523721", "name": "ftyft" }, // 更多数据... ] }</code>
Après avoir défini ces structures, nous pouvons désormais utiliser JavascriptSerializer pour sérialiser les objets JSON:
<code class="language-csharp">public class FriendData { public List<FacebookFriend> data { get; set; } } public class FacebookFriend { public string id { get; set; } public string name { get; set; } }</code>
Cela créera un objet FriendData contenant une liste d'objets Facebook Friends, qui peuvent accéder aux données de chaque ami. Veuillez noter que les noms utilisés ici ne sont utilisés que pour expliquer l'objectif; Choisissez le nom de catégorie approprié pour votre projet.
<code class="language-csharp">FriendData facebookFriends = new JavaScriptSerializer().Deserialize<FriendData>(result);</code>
Afin de démontrer le processus de la séquence d'approfondissement, veuillez considérer le code de test suivant:
L'exécution de ce code générera la sortie suivante:
<code class="language-csharp">string json = @"{""data"":[{""id"":""518523721"",""name"":""ftyft""}, {""id"":""527032438"",""name"":""ftyftyf""}, {""id"":""527572047"",""name"":""ftgft""}, {""id"":""531141884"",""name"":""ftftft""}]}"; FriendData facebookFriends = new JavaScriptSerializer().Deserialize<FriendData>(json); foreach (var item in facebookFriends.data) { Console.WriteLine("id: {0}, name: {1}", item.id, item.name); }</code>
Cela démontre le processus de sérialisation avec succès de l'objet JSON dans une liste d'objets Facebook Friends.
<code>id: 518523721, name: ftyft id: 527032438, name: ftyftyf id: 527572047, name: ftgft id: 531141884, name: ftftft</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!