Deserialisieren von JSON in eine von mehreren C # - Unterklassen

8

Ich habe eine JSON-Struktur, die ungefähr so ​​aussieht:

%Vor%

Ich möchte dies in eine Liste von Objekten deserialisieren, wobei jedes Objekt eine Unterklasse einer Basisklasse ist. Jedes Element in der Liste hat unterschiedliche Eigenschaften (href, src, text), daher kann ich nicht die selbe Klasse für eins verwenden. Stattdessen möchte ich drei Unterklassen einer allgemeinen Klasse. Die type-Eigenschaft jedes Elements in der JSON-Liste kann verwendet werden, um zu entscheiden, welche Unterklasse verwendet werden soll. Zum Beispiel könnte ich die folgenden Klassen haben

%Vor%

Gibt es eine Möglichkeit, dies zu tun? Oder gibt es eine bessere Möglichkeit, eine Liste heterogener Objekttypen zu deserialisieren?

BEARBEITEN

Ich benutze übrigens json.net

    
Marius 11.07.2012, 09:26
quelle

1 Antwort

1

Wie von @AmithGeorge vorgeschlagen, können Sie ein dynamic -Objekt verwenden, um Ihr json-Objekt dynamisch zu analysieren. Du kannst diese großartige dynamische Klasse für JSON von Shawn Weisfeld verwenden . Hier ist sein Blog, der erklärt, wie er macht es .

%Vor%     
John Isaiah Carmona 11.07.2012, 09:54
quelle