UTILS.
Privat von Anfang an
💠

JSON zu C#-Klassen

Erzeugen Sie C#-Modellklassen aus einem JSON-Beispiel für System.Text.Json oder Newtonsoft.Json, mit PascalCase-Eigenschaften und nullbaren Werttypen.

Deine Dateien bleiben auf diesem Gerät

Dateien werden im Browser verarbeitet, nie hochgeladen. Die Website lädt den benötigten Code und die Ressourcen herunter. Ohne Konto und Tracker.

Speichere dieses Tool über Herunterladen als einzelne HTML-Datei zur Offline-Nutzung.

Datenschutz →
Ausgabe

Über dieses Tool

Das Tool JSON zu C#-Klassen konvertiert ein eingefügtes JSON-Beispiel in C#-Modellklassen oder -Records, sodass .NET-Entwickler DTOs aus einer API-Antwort in Sekunden erstellen können. Es parst das JSON, leitet C#-Typen rekursiv ab und gibt einen Typ pro Objekt aus: Strings werden zu string, ISO-Datum-Zeit-Strings zu DateTime, Ganzzahlen zu int oder long, andere Zahlen zu double, Booleans zu bool, Arrays zu List<T> und verschachtelte Objekte zu ihren eigenen PascalCase-Klassen, die vor den Eltern deklariert werden, die sie referenzieren.

Alles Parsen und die Codegenerierung erfolgen lokal in Ihrem Browser mit JSON.parse und reinem JavaScript — nichts wird hochgeladen. Eigenschaften werden als PascalCase-Auto-Properties ausgegeben, public T Prop { get; set; }. Wenn der JSON-Schlüssel vom PascalCase-Eigenschaftsnamen abweicht, fügt das Tool [JsonPropertyName("originalKey")] für System.Text.Json oder [JsonProperty("originalKey")] für Newtonsoft hinzu, und nur die erforderlichen using-Direktiven werden eingebunden.

Werttyp-Eigenschaften, die in einem Beispiel null sein können, werden nullbar gemacht (int?, double?, bool?, DateTime?), während Referenztypen wie string und List bereits nullbar sind. Der Serializer-Umschalter wechselt Attribut- und using-Stil zwischen System.Text.Json (Standard) und Newtonsoft.Json; der Form-Umschalter gibt entweder Klassen (Standard) oder Records aus. Kopieren Sie den Code oder laden Sie ihn als .cs-Datei herunter.

Häufig gestellte Fragen

Wie werden JSON-Typen auf C# abgebildet?
string zu string, ein ISO-Datum-Zeit zu DateTime, Ganzzahl zu int (long jenseits des int-Bereichs), Nicht-Ganzzahl zu double, Boolean zu bool, Array zu List<T> und Objekt zu einer benannten Klasse oder einem Record. Nullbare Werttypen erhalten den nachgestellten ?-Modifikator.
System.Text.Json oder Newtonsoft?
Der Serializer-Umschalter wählt eines von beiden. Er steuert das verwendete Attribut, wenn ein Eigenschaftsname vom JSON-Schlüssel abweicht — [JsonPropertyName("key")] für System.Text.Json oder [JsonProperty("key")] für Newtonsoft — und die entsprechende using-Direktive.
Kann ich Records statt Klassen erzeugen?
Ja. Der Form-Umschalter wechselt zwischen public class (Standard) und public record und behält dieselben PascalCase-Auto-Properties und JSON-Attribute bei, sodass Sie den Stil wählen können, den Ihre Codebasis bevorzugt.
Wird das JSON privat verarbeitet?
Ja. Alles läuft in Ihrem Browser mit JSON.parse und reinem JavaScript; das Beispiel wird nie hochgeladen, sodass das Einfügen echter API-Payloads sicher ist.

Weitere Tools