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) }
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);
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!