So konvertieren Sie JSON in eine C#-Klasse

So Konvertieren Sie Json In Eine C Klasse



JSON oder JavaScript-Objekt-Notation basiert auf einer Teilmenge der Programmiersprache JavaScript, ist jedoch sprachunabhängig und kann mit jeder Programmiersprache verwendet werden, die über einen JSON-Parser verfügt. Benutzen JSON Daten in der C#-Programmierung müssen konvertiert werden JSON zu einem C#-Klasse . Dies ermöglicht es Programmierern, auf typsichere Weise mit den Daten zu interagieren, was das Risiko von Fehlern verringert und die Wartung des Codes vereinfacht.

Arbeiten mit JSON Daten in C# erfordern häufig eine Konvertierung JSON-Daten hinein C#-Klassen die problemlos bearbeitet und in der Anwendung verwendet werden können. In diesem Tutorial wird der Konvertierungsprozess erläutert JSON Daten in C#-Klassen umwandeln, mit Codebeispielen, die Sie dabei unterstützen.







So konvertieren Sie einen JSON in eine C#-Klasse

Die Schritte zum Konvertieren von a JSON zu einem C#-Klasse Sind:



Schritt 1: Analysieren Sie die JSON-Daten



Der erste Schritt zur Konvertierung JSON zu einem C#-Klasse besteht darin, die JSON-Daten zu analysieren und ihre Struktur zu bestimmen. Dazu gehört die Identifizierung der Schlüssel oder Eigenschaften der Daten und ihrer entsprechenden Datentypen. Sobald diese Informationen gesammelt sind, können wir mit der Erstellung einer entsprechenden C#-Klasse beginnen, die die JSON-Daten darstellt.





Schritt 2: Erstellen Sie eine C#-Klasse, die die JSON-Daten darstellt

Der JSON Der Name der Daten wird dann zur Definition einer Klasse verwendet. Innerhalb dieser Klasse definieren wir Eigenschaften, die den Schlüsseln in entsprechen JSON Daten. Wir legen die Datentypen der Eigenschaften so fest, dass sie mit den Datentypen der Werte im übereinstimmen JSON Daten. Wenn beispielsweise ein Schlüssel in der JSON Daten den Wert einer Zeichenfolge haben, definieren wir die entsprechende Eigenschaft in der C#-Klasse als Zeichenfolge.



Schritt 3: Deserialisieren Sie die JSON-Daten

Nach dem Erstellen der C#-Klasse besteht der nächste Schritt darin, sie zu deserialisieren JSON Daten in eine Klasseninstanz. Dies ist mit dem möglich Newtonsoft.Json Bibliothek, die eine einfache API für die Deserialisierung bereitstellt JSON Daten. Sie müssen das installieren und importieren Newtonsoft.Json Paket, um es in Ihrem Code zu verwenden. Erstellen Sie eine Instanz von JsonSerializer Klasse und rufe die an Deserialisieren Methode, Abgabe der JSON Daten als String und die C#-Klasse als generischen Typparameter:

mit Newtonsoft.Json;

// JSON-Daten
Zeichenfolge json = „{“ Name :: John Smith ',' Alter „:30}“ ;
// C # Klasse
Person der öffentlichen Klasse
{
öffentlicher String-Name { erhalten; Satz ; }
öffentliches Int. Alter { erhalten; Satz ; }
}
// Deserialisieren Sie JSON-Daten in ein Person-Objekt
Person person = JsonConvert.DeserializeObject < Person > ( json ) ;

Der JSON data ist in diesem Beispiel ein einfaches Objekt mit einer Namens- und Alterseigenschaft, und die C#-Klasse ist eine Person-Klasse mit ähnlichen Eigenschaften. JsonConvert.DeserializeObject wird zur Konvertierung verwendet JSON Daten in ein Personenobjekt, das in der Anwendung bearbeitet und verwendet werden kann.

Schritt 4: Bearbeiten Sie das C#-Objekt

Nach der Deserialisierung der JSON-Daten in ein C#-Objekt , kann es beliebig manipuliert und in der Anwendung verwendet werden. Eigenschaften können gelesen oder festgelegt werden, Methoden können aufgerufen werden und das Objekt kann als Parameter für andere Prozeduren oder Funktionen bereitgestellt werden.

Hier ist ein Beispiel für die Arbeit mit dem Person Objekt, das Sie im vorherigen Schritt erstellt haben:

// Holen Sie sich die Person 's Name
string name = person.Name;

// Setze die Person'
Salbei
person.Alter = 31 ;

// Rufen Sie eine Methode für das Personenobjekt auf
person.PrintDetails ( ) ;

Das Personenobjekt wird in diesem Beispiel verwendet, um den Namen der Person abzurufen, das Alter der Person festzulegen und sie anzurufen Druckdetails Methode für das Objekt.

Hier ist ein vollständiger Code, der die Vorgehensweise demonstriert Konvertieren Sie JSON in eine C#-Klasse .

Verwenden des Systems;
mit Newtonsoft.Json;

Namespace JsonToClassExample
{
Klassenprogramm
{
statische Leere Main ( Zeichenfolge [ ] args )
{
Zeichenfolge json = @ „{
'Vorname': 'Larry',
'Nachname': 'Kevin',
'Adresse': {
'street': 'Hauptstraße',
'Stadt': 'Venedig',
}
}'
;

Rootobject myObject = JsonConvert.DeserializeObject < Rootobjekt > ( json ) ;

Console.WriteLine ( „Der Vorname ist:“ + meinObjekt.vorname ) ;
Console.WriteLine ( „Der Nachname ist:“ + meinObjekt.lastName ) ;
Console.WriteLine ( „Die Straße ist:“ + myObject.address.street ) ;
Console.WriteLine ( 'Die Stadt ist: ' + myObject.address.city ) ;


Console.ReadLine ( ) ;
}
}

Öffentliche Klasse Rootobject
{
öffentliche Zeichenfolge Vorname { erhalten; Satz ; }
öffentliche Zeichenfolge lastName { erhalten; Satz ; }
öffentliche Adresse { erhalten; Satz ; }
}

öffentliche Klassenadresse
{
öffentliche Streichstraße { erhalten; Satz ; }
öffentliche String-Stadt { erhalten; Satz ; }
}
}

Der obige Code zeigt die Verwendung Newtonsoft.Json NuGet-Paket Zu deserialisieren A JSON-String in eine C#-Klasse . Der JSON-String umfasst Informationen zum Vor- und Nachnamen einer Person sowie deren Adresse (Straße und Stadt). Als C#-Klassen legen die Rootobject- und Address-Klassen die Struktur der JSON-Daten fest.

Der JsonConvert.DeserializeObject Die Methode wird verwendet, um einen JSON-String in einen zu konvertieren Rootobjekt Beispiel. Die Daten werden dann auf der Konsole angezeigt, indem auf die Attribute des zugegriffen wird Rootobjekt und Adressklassen. Der Console.ReadLine Die Methode wird verwendet, um das Programm anzuhalten, bevor es beendet wird.

Ausgang

Andere Möglichkeiten zum Konvertieren von JSON in C#

Sie können das auch kopieren JSON Speichern Sie die Daten in der Zwischenablage und verwenden Sie a JSON-zu-C#-Klassengenerator um die C#-Klasse zu generieren. Es gibt online verschiedene Tools, z Json2CSharp Und QuickType , das Ihnen beim Generieren Ihrer C#-Klasse helfen kann JSON Daten. Fügen Sie die ein JSON Geben Sie die Daten in das entsprechende Feld ein und lassen Sie das Tool die C#-Klasse für Sie generieren. Dieser Ansatz ist unkompliziert und schnell. Zu Lernzwecken müssen Sie jedoch die erste Methode befolgen.

Abschluss

Konvertieren von JSON-Daten in eine C#-Klasse beinhaltet die Analyse der JSON Daten, Erstellen einer entsprechenden C#-Klasse und Deserialisieren der JSON-Daten in das C#-Klassenobjekt. Dieser Vorgang kann bei der Arbeit mit nützlich sein JSON Daten in C#-Anwendungen, was das Lesen, Bearbeiten und Senden von Daten an Webdienste oder APIs erleichtert. Schnell übersetzen JSON zu C# , können Sie auch mehrere Web-Tools nutzen, z Json2CSharp Und QuickType .