Maison > développement back-end > C++ > Comment désérialiser les données JSON polymorphes dans une liste de classes de base à l'aide d'un converter JSON personnalisé?

Comment désérialiser les données JSON polymorphes dans une liste de classes de base à l'aide d'un converter JSON personnalisé?

Mary-Kate Olsen
Libérer: 2025-02-02 08:31:09
original
226 Les gens l'ont consulté

How to Deserialize Polymorphic JSON Data into a List of Base Classes using a Custom JsonConverter?

en utilisant des convertisseurs JSONConverter personnalisés

Target

Ce guide est conçu pour résoudre le problème de l'utilisation de JSONConverter personnalisé pour séquencer les données Polymond dans une liste de catégories de base. Dans cet exemple, nous avons une personne de classe de base et un employé et un artiste de sous-cate, et chaque sous-classe a ses attributs uniques.

implémenter

CustomCreationConverter standard n'est pas suffisant pour terminer cette tâche car elle ne peut pas déterminer le type correct basé sur l'analyse d'objets JSON. Au contraire, nous avons besoin:

Hériter du JSONConverrter et réécrivez la méthode Readjson.

Créer une méthode de création abstraite, qui accepte un Jobject (représentant JSON Object).
  1. La méthode Readjson sera:
JSON Analysé comme Jobject.

Créer une méthode et passer dans Jobject.
  1. Créer la méthode sera:
Analyse du type correct pour analyser le type correct en fonction de l'existence ou de l'existence de champs spécifiques.

retournez au type d'instance correspondant.
  1. Exemple
  2. Considérez le JSON suivant:

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