Actuellement, j'ai des données JSON que je tente de désérialiser en utilisant la classe DataContractJsonSerializer
. Toutefois, l'un des tableaux dans les données contient plusieurs types d'objets. Existe-t-il un moyen de désérialiser correctement ces données? Je suis conscient que a very similar question exists, mais je préférerais ne pas utiliser Json.NET ou d'autres bibliothèques tierces.Désérialisation d'un tableau JSON multi-type à l'aide de DataContracts
EDIT: Un petit exemple:
Dans ce cas, disons que le JSON est de forme [{"foo":string},{"bar":string},{"foo":string},{"foo":string},...]
où chaque élément est soit sous forme de {"foo":string}
ou {"bar":string}
. Ensuite, les contrats pourraient être mis en place en tant que tel:
[DataContract]
class Foo { [DataMember] public string foo; }
[DataContract]
class Bar { [DataMember] public string bar; }
Dans ce contexte, ma question est, comment puis-je deserialize ce tableau de Foo
s et Bar
s?
'Cependant, l'un des tableaux dans les données contiennent plusieurs types de objects' - pourriez-vous donner un exemple? En quoi ces types d'objet sont-ils différents? Si pour une raison quelconque ils sont complètement différents, vous pouvez considérer le type 'dynamic'. Publier un échantillon du JSON et le modèle que vous essayez de désérialiser serait utile. –
@ShaneRay Ajout d'un petit exemple, dans le cas réel, mes 'Foo' et' Bar' ont des propriétés complètement différentes. – LegionMammal978