JSON-Eingabe

C#-Ausgabe

Was ist JSON zu C#?

C# verwendet Klassen und Properties zur Datendarstellung. Bei JSON aus APIs oder Konfigurationen brauchen Sie passende C#-Typen für die Deserialisierung. Dieses Tool erzeugt C#-Klassen (POCOs) aus Ihrem JSON. Fügen Sie Beispiel-JSON ein und erhalten Sie Klassendefinitionen mit den richtigen Property-Typen. Nutzen Sie sie mit System.Text.Json oder Newtonsoft.Json.

Die Konvertierung läuft in Ihrem Browser. Nutzen Sie die Konfigurationsoptionen für Klassennamen, Properties vs. Felder und Nullable-Typen. Nichts wird an einen Server gesendet.

So verwenden Sie dieses Tool

1

JSON einfügen

Fügen Sie Ihr JSON in den linken Editor ein oder laden Sie eine Datei hoch. Nutzen Sie Beispiel für Beispieldaten. Setzen Sie den Root-Klassennamen und Optionen (Properties, Nullable) im Konfigurationspanel.

2

Klassen prüfen

Das rechte Panel zeigt generierte C#-Klassen. Verschachtelte Objekte werden zu eigenen Klassen. Arrays werden zu List<T> oder T[]. Fügen Sie bei Bedarf [JsonPropertyName]-Attribute für andere JSON-Schlüssel hinzu.

3

Kopieren oder Herunterladen

Nutzen Sie <strong>Kopieren</strong> oder <strong>Herunterladen</strong>, um den Code zu erhalten. Fügen Sie ihn in Ihr .NET-Projekt ein. Zum Formatieren von JSON zuerst den JSON Formatierer verwenden. Zur Validierung den JSON Validator.

Beispiele: JSON zu C#

Hier ein Beispiel für die Generierung von C#-Klassen aus einem JSON-Objekt.

Beispiel: Teilnehmerdatensatz

JSON-Eingabe:

Eingabe

Generierte C#-Ausgabe:

Ausgabe

Wann JSON zu C# hilft

Bei der Integration von REST-APIs in .NET, ASP.NET Core oder Blazor brauchen Sie C#-Typen für die Deserialisierung. Ein Beispiel-Response hier einzufügen liefert POCOs für JsonSerializer.Deserialize<T>() oder Newtonsoft.Json. Für API-Tests sind Postman und jq nützlich.

Häufig gestellte Fragen

Properties vs. Felder?

Properties verwenden get; und set;. System.Text.Json und Newtonsoft.Json serialisieren standardmäßig Properties. Felder funktionieren, sind aber für DTOs weniger üblich.

Was ist mit Nullable Reference Types?

Aktivieren Sie Nullable Types in der Konfiguration für string? usw. Nützlich für optionale JSON-Felder. Erfordert Nullable-Kontext in Ihrem Projekt.

Werden meine Daten irgendwohin gesendet?

Nein. Die Generierung läuft in Ihrem Browser.

Kann ich dies mit System.Text.Json nutzen?

Ja. Die generierten Klassen funktionieren mit JsonSerializer.Deserialize<T>(). Fügen Sie using System.Text.Json.Serialization; hinzu, wenn Sie benutzerdefinierte Attribute brauchen.

Was, wenn meine JSON-Schlüssel nicht zur C#-Namenskonvention passen?

Verwenden Sie [JsonPropertyName("json_key")] auf der Property oder konfigurieren Sie JsonSerializerOptions.PropertyNamingPolicy auf camelCase.

Verwandte Tools

System.Text.Json. Newtonsoft.Json. JSON-Spezifikation. RFC 8259. MDN. .NET. Postman.