Heim > Backend-Entwicklung > C++ > Wie deserialisiere ich JSON mit dynamischen Schlüsseln in eine Liste von Objekten in C#?

Wie deserialisiere ich JSON mit dynamischen Schlüsseln in eine Liste von Objekten in C#?

Linda Hamilton
Freigeben: 2025-01-19 19:27:11
Original
189 Leute haben es durchsucht

How to Deserialize JSON with Dynamic Keys into a List of Objects in C#?

JSON-Deserialisierung, die dynamische Schlüssel in C# verarbeitet

Beim Empfang von JSON-Antworten mit dynamischen Schlüsseln besteht eine häufige Aufgabe darin, diese in eine Liste von Objekten in C# zu deserialisieren. Betrachten wir ein Szenario, in dem die JSON-Antwort den folgenden Inhalt enthält:

{
"nasdaq_imbalance": {
    "name": "nasdaq_imbalance",
    "group": "Market Data",
    "description": null
},
"DXOpen IM": {
    "name": "DXOpen IM",
    "group": "Daily",
    "description": null
},
"Float Shares": {
    "name": "Float Shares",
    "group": "Daily",
    "description": null
}
}
Nach dem Login kopieren

Deserialisierung dynamischer Schlüssel behandeln

Um diesen JSON in eine Liste von Objekten zu deserialisieren, können Sie die folgenden Schritte ausführen:

  1. Deserialisieren Sie JSON in Dictionary<string, Dataset> mithilfe von Json.NET.
  2. Durchlaufen Sie das Wörterbuch, um die Liste der Dataset-Objekte zu füllen.

Das Folgende ist ein Beispielcode:

using Newtonsoft.Json;
using System.Collections.Generic;

// ...

var jsonObject = JsonConvert.DeserializeObject<Dictionary<string, Dataset>>(json);
var datasetList = new List<Dataset>();

foreach (var item in jsonObject)
{
    datasetList.Add(item.Value);
}
Nach dem Login kopieren

Dieser Code erstellt eine Dataset Liste von Objekten, die die Werte der dynamischen Schlüssel in der JSON-Antwort enthalten. Die resultierende Liste lautet:

<code>datasetList[0].name = "nasdaq_imbalance"
datasetList[0].group = "Market Data"

datasetList[1].name = "DXOpen IM"
datasetList[1].group = "Daily"

datasetList[2].name = "Float Shares"
datasetList[2].group = "Daily"</code>
Nach dem Login kopieren

Bitte beachten Sie, dass diese Methode davon ausgeht, dass die Klasse Dataset definiert ist und die Eigenschaften name und group enthält. Sie müssen den Code entsprechend Ihrer tatsächlichen Dataset Klassenstruktur anpassen.

Das obige ist der detaillierte Inhalt vonWie deserialisiere ich JSON mit dynamischen Schlüsseln in eine Liste von Objekten in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage