JSON mit C# deserialisieren

Muhammad Zeeshan 12 Oktober 2023
JSON mit C# deserialisieren

Deserialisierung in C# bezieht sich auf das Abrufen des serialisierten Objekts, damit es in den Arbeitsspeicher geladen werden kann. Anschließend kann das Objekt erneut verwendet werden. Schließlich erweckt es den vorherigen Zustand des Objekts wieder zum Leben, indem es seine Attribute usw.

In diesem Tutorial erfahren Sie, wie Sie ein JSON-Objekt mit der Programmiersprache C# deserialisieren.

JSON mit C# deserialisieren

Sehen wir uns ein Beispiel für die Deserialisierung eines JSON-Objekts mit der Programmiersprache C# an. Im folgenden Beispiel verwenden wir die Daten der Schüler, um JSON mit C# zu deserialisieren. Aber lassen Sie uns zunächst das folgende Beispiel Schritt für Schritt durchgehen.

  • Zunächst müssen wir die folgenden Bibliotheken importieren.
    using System;
    using System.Collections.Generic;
    using System.Web;
    using System.Web.Script.Serialization;
    using Newtonsoft.Json;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
  • Wir müssen eine Student-Struktur erstellen, die die Informationen des Schülers enthält, zum Beispiel Studentid und Studentname wie folgt.
    public class Students {
      public List<studentinfo> MyStudents { get; set; }
    }
    public class studentinfo {
      public string Studentid { get; set; }
      public string Studentname { get; set; }
    }
    
  • Jetzt erstellen wir eine JSON-Liste und füllen sie mit zufälligen Schülerdaten.
    string json =
        @"{""MyStudents"":[
      {""Studentid"":""3227"",""Studentname"":""Muhammad Zeeshan""},
      {""Studentid"":""3256"",""Studentname"":""Haseeb Khan""},
      {""Studentid"":""3241"",""Studentname"":""Saad Ashrafi""},
      {""Studentid"":""3267"",""Studentname"":""Bawa Khan""}
    ]}";
    
  • Verwenden Sie dann die Funktion .Deserialize(), um die Liste zu deserialisieren.
    Students derializedStudent =
        new System.Web.Script.Serialization.JavaScriptSerializer().Deserialize<Students>(json);
    
  • Zuletzt verwenden wir die foreach-Schleife, um Ergebnisse auf der Konsole anzuzeigen.
    foreach (var item in derializedStudent.MyStudents) {
      Console.WriteLine("id: {0}, name: {1}", item.Studentid, item.Studentname);
    }
    

Der vollständige Quellcode ist unten angegeben.

Vollständiger Quellcode

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Script.Serialization;
using Newtonsoft.Json;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DeserializeJSONbyZeeshan {
  class Program {
    static void Main(string[] args) {
      string json =
          @"{""MyStudents"":[
                           {""Studentid"":""3227"",""Studentname"":""Muhammad Zeeshan""},
                           {""Studentid"":""3256"",""Studentname"":""Haseeb Khan""},
                           {""Studentid"":""3241"",""Studentname"":""Saad Ashrafi""},
                           {""Studentid"":""3267"",""Studentname"":""Bawa Khan""}
                       ]}";

      Students derializedStudent =
          new System.Web.Script.Serialization.JavaScriptSerializer().Deserialize<Students>(json);

      foreach (var item in derializedStudent.MyStudents) {
        Console.WriteLine("id: {0}, name: {1}", item.Studentid, item.Studentname);
      }
    }
  }
}

public class Students {
  public List<studentinfo> MyStudents { get; set; }
}

public class studentinfo {
  public string Studentid { get; set; }
  public string Studentname { get; set; }
}

Ausgang:

id: 3227, name: Muhammad Zeeshan
id: 3256, name: Haseeb Khan
id: 3241, name: Saad Ashrafi
id: 3267, name: Bawa Khan
Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn

Verwandter Artikel - Csharp JSON