JSON naar C# converter — Klassen genereren
Zet JSON om naar C#-klassen met System.Text.Json- of Newtonsoft.Json-attributen, nullable typen en List<T>. Gratis, privé en volledig in je browser.
🔒 Draait volledig in je browser — niets wordt geüploadMaak C#-modelklassen van JSON
Deze JSON naar C# converter leest een JSON-voorbeeld en genereert sterk getypeerde C#-klassen die bij de structuur passen. Elk object wordt een public partial class, elke eigenschap krijgt een PascalCase-naam met een serializer-attribuut dat teruggaat naar de oorspronkelijke JSON-sleutel, en geneste objecten worden eigen klassen, vernoemd naar de eigenschap die ze bevat. Arrays worden List<T> of T[], ISO-datums worden DateTimeOffset en waarden die soms ontbreken of null zijn, worden als nullable typen gegenereerd, zodat je code compileert tegen echte payloads in plaats van een geïdealiseerde.
Onder de motorkap gebruikt de tool quicktype, een volwassen engine voor type-inferentie die alle elementen van een array samenvoegt voordat hij een type kiest. Een lijst bestellingen waarvan slechts sommige een coupon hebben, levert dus nog steeds één Order-klasse op met een optionele Coupon-eigenschap, en geen klasse die alleen bij het eerste element past.
System.Text.Json of Newtonsoft
Moderne .NET-projecten gebruiken meestal System.Text.Json, de standaardkeuze hier: eigenschappen krijgen [JsonPropertyName] en de uitvoer bevat een FromJson-factory, een ToJson-extensiemethode en converterinstellingen voor ISO-datums. Gebruikt je codebase nog Json.NET, schakel de serializer dan over naar Newtonsoft en je krijgt [JsonProperty]-attributen met dezelfde hulpfuncties op basis van JsonConvert. Kies Classes only als je alleen de POCO's wilt om in een bestaande DTO-map te plakken, en stel de namespace in zodat het bestand direct in je solution past.
Tips voor nauwkeurige C#-typen
Plak het meest complete voorbeeld dat je hebt: neem optionele velden, lege en gevulde arrays en meer dan één arrayelement op, zodat de inferentie ziet welke eigenschappen altijd aanwezig zijn. Hernoem de rootklasse van Root naar iets zinvols zoals OrderResponse voordat je downloadt — de bestandsnaam volgt die naam. Controleer na het plakken in Visual Studio of Rider de typen die een voorbeeld niet kan tonen: een geheel getal als ID dat long kan overschrijden, een string die eigenlijk een enum is, of geldbedragen die beter als decimal werken. Alles draait lokaal, dus je kunt veilig productieantwoorden gebruiken terwijl je werkt.
Hoe te gebruiken
- Plak JSONPlak een JSON-object of -array, of klik op Load sample om het uit te proberen.
- Stel opties inKies de naam van de rootklasse, de namespace, de serializer en het collectietype.
- Kopieer de klassenKopieer de gegenereerde C#-code of download die als .cs-bestand voor je project.
Veelgestelde vragen
Ondersteunt het System.Text.Json en Newtonsoft.Json?
[JsonPropertyName]- of [JsonProperty]-attributen plus converterhulpfuncties voor die bibliotheek.Kan ik gewone klassen krijgen zonder de serializerhulpfuncties?
Hoe worden datums, decimalen en nulls getypeerd?
DateTimeOffset, getallen met breuken worden double, en velden die in sommige voorbeelden ontbreken of null zijn, worden nullable.