JSON-Eingabe

C#-Ausgabe

Was ist JSON zu C#?

Wenn du eine Drittanbieter-API in deine .NET-App integrierst, bekommst du meistens JSON-Dokumente, brauchst aber typisierte C#-Klassen zur Deserialisierung. Diese Klassen manuell zu schreiben ist mühsam – besonders bei tief verschachtelten Objekten. Dieses Tool generiert C#-POCOs automatisch aus deinem JSON. Füge eine Beispiel-API-Response ein und erhalte Klassendefinitionen, die du direkt in dein Projekt einfügen kannst. Sie funktionieren sofort 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 Kopieren oder Herunterladen, 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.

Beispiele: JSON zu C#

Beispiel: JSON-Objekt in C#-Klasse

JSON-Eingabe:

{"subscriberId":"SUB-001","planName":"Premium-4G-Tarif","dataLimit":"50GB","voiceMinutes":500,"status":"aktiv"}

Generierte C#-Klasse:

public class RootObject
{
    public string SubscriberId { get; set; }
    public string PlanName { get; set; }
    public string DataLimit { get; set; }
    public int VoiceMinutes { get; set; }
    public string Status { get; set; }
}

Häufig gestellte Fragen

Wie deserialisiere ich JSON in C#?

Verwende JsonSerializer.Deserialize<DeineKlasse>(jsonString) aus System.Text.Json oder JsonConvert.DeserializeObject<DeineKlasse>(jsonString) aus Newtonsoft.Json. Du brauchst eine passende C#-Klasse – generiere sie hier, indem du dein JSON einfügst.

Was tun, wenn JSON-Keys nicht zu C#-Namenskonventionen passen?

Verwende [JsonPropertyName("json_key")] an der Property (System.Text.Json) oder [JsonProperty("json_key")] (Newtonsoft). Alternativ kannst du JsonSerializerOptions.PropertyNamingPolicy auf JsonNamingPolicy.CamelCase setzen für automatisches Mapping.

Was ist mit Nullable Reference Types in C#?

Aktiviere Nullable Types in der Konfiguration, um string?, int? usw. zu generieren. Das ist nützlich, wenn JSON-Felder null oder abwesend sein können. Du brauchst #nullable enable oder eine nullable-fähige Projekteinstellung.

Werden meine JSON-Daten an einen Server gesendet?

Nein. Die Klassengenerierung läuft vollständig in deinem Browser. Dein JSON verlässt deinen Rechner nie – daher sicher für Produktions-API-Keys oder sensible Daten.

Properties vs. Felder – was soll ich verwenden?

Properties (get; set;) sind der Standard für DTOs in C#. Sowohl System.Text.Json als auch Newtonsoft.Json serialisieren standardmäßig öffentliche Properties. Felder funktionieren, sind aber für Datentransferobjekte weniger üblich.

Verwandte Tools

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