Heim >Backend-Entwicklung >C++ >Wie kann ich JSON -Objekte, die Listen in C#enthalten, erfolgreich deverialisieren?

Wie kann ich JSON -Objekte, die Listen in C#enthalten, erfolgreich deverialisieren?

Patricia Arquette
Patricia ArquetteOriginal
2025-02-02 07:06:08472Durchsuche

How to Successfully Deserialize JSON Objects Containing Lists in C#?

Verwenden Sie C# counter -sequenz JSON

Beim Versuch, das JSON -Objekt in eine Liste von Objekten aufzulegen, kann es aufgrund des ungültigen Originalobjekts schwierig sein. Dieser Artikel bietet eine Lösung für dieses Problem, sodass Sie erfolgreich zu solchen JSON -Objekten führen können.

Betrachten Sie die folgenden JSON -Objekte. Es zeigt an, dass die Liste der Facebook -Freunde über die Graph -API erhalten wurde:

Um dieses JSON -Objekt zu erkennen, müssen wir eine Struktur erstellen, die dem Modus entspricht. In diesem Beispiel handelt es sich um eine Facebook -fackel -Objektliste:
<code>{
    "data": [
        {
            "id": "518523721",
            "name": "ftyft"
        },
        // 更多数据...
    ]
}</code>

Nachdem wir diese Strukturen definiert haben, können wir jetzt JavaScriptSerializer verwenden, um JSON -Objekte zu serialisieren:
<code class="language-csharp">public class FriendData
{
    public List<FacebookFriend> data { get; set; }
}

public class FacebookFriend
{
    public string id { get; set; }
    public string name { get; set; }
}</code>

Dies erstellt ein FriendData -Objekt, das eine Liste von Facebook -Objekten enthält, die auf die einzelnen Freundesdaten zugreifen kann. Bitte beachten Sie, dass die hier verwendeten Namen nur verwendet werden, um den Zweck zu erklären.
<code class="language-csharp">FriendData facebookFriends = new JavaScriptSerializer().Deserialize<FriendData>(result);</code>

Um den Prozess der Vertiefungssequenz zu demonstrieren, betrachten Sie bitte den folgenden Testcode:

Ausführen dieses Codes generiert die folgende Ausgabe:
<code class="language-csharp">string json =
    @"{""data"":[{""id"":""518523721"",""name"":""ftyft""}, {""id"":""527032438"",""name"":""ftyftyf""}, {""id"":""527572047"",""name"":""ftgft""}, {""id"":""531141884"",""name"":""ftftft""}]}";

FriendData facebookFriends = new JavaScriptSerializer().Deserialize<FriendData>(json);

foreach (var item in facebookFriends.data)
{
    Console.WriteLine("id: {0}, name: {1}", item.id, item.name);
}</code>

Dies zeigt den Prozess der erfolgreichen Serialisierung des JSON -Objekts in eine Liste von Facebookfriend -Objekten.
<code>id: 518523721, name: ftyft
id: 527032438, name: ftyftyf
id: 527572047, name: ftgft
id: 531141884, name: ftftft</code>

Das obige ist der detaillierte Inhalt vonWie kann ich JSON -Objekte, die Listen in C#enthalten, erfolgreich deverialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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