Omnikit
DevDateienFinanzenAlle Tools
Ctrl K
Dev-ToolsDatei-ToolsFinanzrechnerAlle Tools
StartseiteEntwickler-ToolsJSON-zu-C#-Klassen-Konverter
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

JSON-zu-C#-Klassen-Konverter

dev

Machen Sie aus einem JSON-Beispiel C#-Klassen oder Records für System.Text.Json oder Newtonsoft.Json

Läuft in Ihrem Browser. Nichts, was Sie eingeben, wird irgendwohin gesendet. Geprüft am 16. Oktober 2026.

Fügen Sie ein JSON-Beispiel ein und erhalten Sie C#-Klassen oder Records mit Eigenschaften in PascalCase und dem JSON-Schlüssel in einem Attribut JsonPropertyName oder JsonProperty. Ganze Zahlen werden zu int, über 2.147.483.647 zu long, jede Dezimalzahl macht ein Feld zu double, und ein Wert, der null ist oder fehlt, wird nullable, etwa int?.

Diese Seite wurde maschinell aus dem englischen Original übersetzt. Die Übersetzung wurde noch von keinem Menschen geprüft; maßgeblich ist die englische Fassung. Englisches Original lesen

Weiter:
  • JSON in TypeScript umwandeln TypeScript-Interfaces oder -Typen aus einem JSON-Beispiel erzeugen
  • JSON-Formatierer und Validator JSON formatieren, validieren, minifizieren und sortieren, mit genauer Fehlerposition

So wandeln Sie JSON in eine C#-Klasse um

1

Fügen Sie ein JSON-Beispiel, etwa eine API-Antwort, in das linke Feld ein.

2

Die C#-Klassen erscheinen während der Eingabe, eine pro Objekt, mit Eigenschaften in PascalCase und dem JSON-Schlüssel jeweils in einem Attribut.

3

Wählen Sie System.Text.Json oder Newtonsoft.Json und Records mit init, wenn Sie unveränderliche Modelle bevorzugen.

4

Klicken Sie auf Kopieren oder auf Herunterladen, um Models.cs zu speichern, und deserialisieren Sie in die Wurzelklasse.

Über den JSON-zu-C#-Klassen-Konverter

C# liest JSON in typisierte Klassen ein, und jede Eigenschaft braucht den richtigen Typ und einen Weg, ihren Schlüssel zu finden. Dieser Konverter schreibt diese Klassen aus einem Beispiel, sodass eine lange API-Antwort mit einem Einfügen zu einem kompilierbaren Modell wird.

Wie die Typen gewählt werden.

JSON-Wert C#-Typ
"text" string
true / false bool
42 (nur ganze Zahlen) int, oder long über 32 Bit hinaus
4.5 (irgendeine Dezimalzahl gesehen) double
null und zusätzlich ein Typ int?, string?
nur null oder gemischte Arten object?
[ ... ] List<...>
{ } leer Dictionary<string, object>
{ ... } eine eigene Klasse

Schlüssel und Namen. Eigenschaften stehen in PascalCase, sodass aus user_name UserName und aus avatar_url AvatarUrl wird. Jede Eigenschaft trägt ihren ursprünglichen Schlüssel in einem Attribut, weil System.Text.Json Namen standardmäßig unter Beachtung der Groß- und Kleinschreibung abgleicht; Newtonsoft erhält stattdessen [JsonProperty]. Eine Eigenschaft, die den Namen ihrer Klasse tragen würde, was der Compiler als CS0542 ablehnt, erhält ein angehängtes Value.

Arrays von Objekten. Alle Objekte eines Arrays werden zu einer Klasse zusammengeführt, sodass ein Schlüssel, der nur in einigen vorkommt, trotzdem vorhanden ist, als nullable, damit sein Fehlen als null gelesen wird und nicht als 0 oder false. Zwei Objekte mit genau denselben Schlüsseln und Typen teilen sich eine Klasse.

Optionen. Records mit init ergeben unveränderliche Modelle, die nach Wert verglichen werden. Die Wurzelklasse heißt Root, sofern Sie keinen Namen vergeben. Ist das JSON selbst ein Array oder ein einzelner Wert, nennt ein Kommentar den Typ, in den deserialisiert wird, etwa List.

Jede Ausgabe wurde geprüft, indem das C# zurückgelesen und 9 Beispiele nach den Regeln der Serializer damit abgeglichen wurden. Nichts, was Sie einfügen, verlässt den Browser.

Häufig gestellte Fragen

Wie wandle ich JSON in eine C#-Klasse um?

Fügen Sie ein JSON-Beispiel in den Konverter ein, und die C#-Klassen erscheinen daneben, eine pro Objekt, mit einem Attribut JsonPropertyName an jeder Eigenschaft. Kopieren Sie sie in Ihr Projekt und lesen Sie das JSON mit JsonSerializer.Deserialize<Root>(json) oder mit JsonConvert.DeserializeObject<Root>(json), wenn Newtonsoft gewählt ist.

Warum hat jede Eigenschaft ein Attribut JsonPropertyName?

System.Text.Json gleicht Eigenschaftsnamen standardmäßig unter Beachtung der Groß- und Kleinschreibung ab, sodass eine Eigenschaft namens UserName den Schlüssel user_name nie erhielte. Das Attribut nennt den genauen Schlüssel, was die C#-Namen in PascalCase hält und das JSON trotzdem ohne Serializer-Optionen oder Namensrichtlinie liest.

Wann ist eine Eigenschaft nullable, etwa int? oder string?

Eine Eigenschaft ist nullable, wenn das Beispiel null für sie zeigt oder wenn manche Objekte eines Arrays ihren Schlüssel weglassen. Ohne das Fragezeichen würde eine fehlende Zahl stillschweigend als 0 gelesen und ein fehlendes Flag als false, daher hält der nullable Typ fehlend und null auseinander.

Sollte ich Klassen oder Records verwenden?

Records mit init-Accessoren eignen sich für Modelle, die Sie nur lesen, weil sich ihre Eigenschaften nach der Deserialisierung nicht ändern können und zwei Records mit gleichen Werten als gleich gelten. Klassen mit set eignen sich für Modelle, die Sie befüllen oder bearbeiten. Beide funktionieren mit System.Text.Json ab .NET 5 und mit Newtonsoft.Json.

Welche Typen erhalten Zahlen in C#?

Ganze Zahlen werden zu int, oder zu long, wenn ein Wert über 2.147.483.647 liegt, und ein Feld wird zu double, sobald irgendein Beispielwert Nachkommastellen hat. Werte unterschiedlicher Art, etwa eine Zahl in einem Element und Text in einem anderen, werden zu object?, das den rohen JSON-Wert behält.

Wird mein JSON hochgeladen?

Nein. Die Umwandlung läuft in Ihrem Browser ohne Anfrage an einen Server, und das JSON wird nicht gespeichert, sodass API-Antworten mit Tokens oder persönlichen Daten auf Ihrem Gerät bleiben. Schließen Sie den Tab, und nichts bleibt zurück.

Quellen

  • Microsoft Learn, System.Text.Json: customize property namesJsonPropertyName, and case-sensitive matching by default
  • Newtonsoft.Json documentation, JsonPropertyAttribute nameJsonProperty("key") on a property
  • Microsoft Learn, .NET naming guidelinesPascalCase types and properties
  • Microsoft Learn, compiler error CS0542A member cannot have the same name as its enclosing type

Zuletzt geprüft am 16. Oktober 2026.

Sätze und Regeln ändern sich; prüfen Sie die Quelle, bevor Sie sich auf eine Zahl verlassen.

Kommen Sie nicht weiter? Fragen Sie zu JSON-zu-C#-Klassen-Konverter und jeder, der es weiß, kann antworten. Kein Konto nötig.

Ähnliche Tools

Alle Entwickler-Tools
Base64 kodieren und dekodierenText und Dateien in Base64 und zurück, mit URL-sicherem Modus und BildvorschauUnix-Timestamp-KonverterUnix-Timestamps in Datumsangaben und Datumsangaben in Timestamps, in jeder ZeitzoneJSON in TypeScript umwandelnTypeScript-Interfaces oder -Typen aus einem JSON-Beispiel erzeugenCSV in JSON umwandelnCSV in JSON und JSON in CSV umwandeln, mit TabellenvorschauYAML in JSON umwandelnYAML in JSON und JSON in YAML umwandeln, mit aufgelösten AnkernURL-Encoder und -DecoderText und URLs prozentkodieren oder dekodieren und jeden Teil eines Links sehenZahlensystem-UmrechnerBinär, oktal, dezimal, hexadezimal und jede Basis bis 36, exakt bei jeder Größe, mit ZweierkomplementColor ConverterHEX, RGB, HSL, HWB, OKLCH and CMYK in both directions, with a contrast check
War dieses Tool hilfreich?
Omnikit

Kleine Aufgaben, erledigt in Ihrem Browser. Kostenlos, schnell und privat. Dateien werden nie hochgeladen.

Dateien

  • Compress Image
  • Image to PDF
  • Merge PDF
  • Compress PDF
  • PDF to Word
  • Word to PDF

Dev

  • JSON Formatter & Validator
  • Base64 Encode & Decode
  • JWT Decoder, Verifier & Encoder
  • Password Generator
  • UUID Generator
  • Unix Timestamp Converter

Finanzen

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
AnleitungenFragenÜber unsWie wir prüfenGesetzesbibliothek (Beta)DatenschutzNutzungsbedingungenOffenlegungKontaktMore: Exam practice (UGC NET Paper 1)Läuft in Ihrem Browser. Nichts wird hochgeladen. © 2026 Omnikit (theomnikit.com)