JSON zu C#
JSON in C#-Klassen und POCO-Objekte für .NET-Entwicklung umwandeln
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
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.
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.
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:
Generierte C#-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.