Deserialisieren Sie JSON in verschachtelte C#-Klassen
Die von der REST-API abgerufene JSON-Antwort enthält mehrere Jobcode-Einträge, die in einer komplexen Struktur verschachtelt sind. Die Deserialisierung dieser Daten erfordert eine Klassenstruktur, die dem JSON-Layout entspricht, und einen geeigneten Datentyp zur Verarbeitung der verschiedenen Schlüssel.
Erstellen Sie zunächst eine Klasse auf Stammebene RootObject
, die die Eigenschaften Results
einer anderen Klasse Results
enthält. Results
enthält ein JobCodes
mit dem Namen Dictionary<string, JobCode>
, wobei die Zeichenfolgenschlüssel Jobcode-IDs („1“, „2“ usw.) und die Werte JobCode
-Objekte sind.
Als nächstes definieren Sie die Klasse JobCode
, deren Eigenschaften JSON-Werten zugeordnet sind: StatusCode
, StatusMessage
, Id
und Name
.
Um JSON zu deserialisieren, verwenden Sie:
<code class="language-csharp">RootObject obj = JsonConvert.DeserializeObject<RootObject>(json);</code>
Dadurch wird eine Instanz von RootObject
erstellt, auf die Sie dann zugreifen können, um eine Liste von Jobcodes wie diese abzurufen:
<code class="language-csharp">List<JobCode> jobCodes = obj.Results.JobCodes.Values.ToList();</code>
Das obige ist der detaillierte Inhalt vonWie deserialisiere ich verschachteltes JSON in C#-Klassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!