Maison > développement back-end > C++ > Comment désérialiser un tableau JSON d'objets clients imbriqués à l'aide de Json.net ?

Comment désérialiser un tableau JSON d'objets clients imbriqués à l'aide de Json.net ?

Susan Sarandon
Libérer: 2025-01-04 22:29:41
original
857 Les gens l'ont consulté

How to Deserialize a JSON Array of Nested Customer Objects using Json.net?

Désérialiser un tableau d'objets JSON avec Json.net

Comprendre le problème

Vous rencontrez des difficultés désérialiser un tableau JSON contenant les détails du client en objets C#. La structure JSON diffère de la structure d'objet attendue dans la mesure où chaque objet client est imbriqué dans une propriété « client » distincte.

Solution utilisant un modèle personnalisé

Pour résoudre ce problème problème, créez un modèle personnalisé qui correspond à la structure JSON :

public class CustomerJson
{
    [JsonProperty("customer")]
    public Customer Customer { get; set; }
}

public class Customer
{
    [JsonProperty("first_name")]
    public string Firstname { get; set; }

    [JsonProperty("last_name")]
    public string Lastname { get; set; }

    ... (additional customer properties)
}
Copier après la connexion

Désérialiser le JSON

Une fois que vous avez défini le modèle personnalisé, vous pouvez désérialiser votre tableau JSON comme suit :

JsonConvert.DeserializeObject<List<CustomerJson>>(json);
Copier après la connexion

Cela se traduira par une liste d'objets CustomerJson, où chaque instance CustomerJson encapsule un client objet.

Remarque :

N'oubliez pas d'inclure l'espace de noms System.Text.Json dans votre code pour accéder à la classe JsonConvert.

Cette méthode permet vous de désérialiser les tableaux JSON avec des propriétés d'objet imbriquées dans des objets enfants, ce qui est essentiel lorsque vous travaillez avec des structures JSON complexes.

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