JSON-invoer

C#-uitvoer

Wat is JSON naar C#?

Als je een externe API integreert in je .NET-app, krijg je doorgaans JSON-documenten maar heb je getypeerde C#-klassen nodig om de respons te deserialiseren. Die klassen handmatig schrijven is vervelend — zeker bij diep geneste objecten. Deze tool genereert automatisch C# POCOs van je JSON. Plak een voorbeeld API-respons en krijg klassedefinities die je direct in je project kunt gebruiken. Ze werken meteen met System.Text.Json of Newtonsoft.Json.

Conversie vindt plaats in uw browser. Gebruik de configuratie-opties voor klassennamen, properties vs. velden en nullable-typen. Er wordt niets naar een server gestuurd.

Hoe dit hulpmiddel te gebruiken

1

JSON plakken

Plak uw JSON in de linker editor of upload een bestand. Gebruik Voorbeeld voor voorbeeldgegevens. Stel de root-klassenaam en opties (Properties, Nullable) in het configuratiepaneel in.

2

Klassen controleren

Het rechterpaneel toont gegenereerde C#-klassen. Geneste objecten worden eigen klassen. Arrays worden List<T> of T[]. Voeg indien nodig [JsonPropertyName]-attributen toe voor andere JSON-sleutels.

3

Kopiëren of downloaden

Gebruik Kopiëren of Downloaden om de code te krijgen. Plak in uw .NET-project. Om eerst JSON op te maken, gebruik de JSON Formatter. Voor validatie, gebruik de JSON Validator.

JSON naar C#-voorbeelden

Hier is een voorbeeld van het genereren van C#-klassen uit een JSON-object.

Voorbeeld: Abonneerecord

JSON-invoer:

Invoer

Gegenereerde C#-uitvoer:

Uitvoer

Waar JSON naar C# helpt

Bij het integreren van REST-API's in .NET, ASP.NET Core of Blazor heeft u C#-typen nodig voor deserialisatie. Een voorbeeldresponse hier plakken levert POCO's voor JsonSerializer.Deserialize<T>() of Newtonsoft.Json. Voor API-testen zijn Postman en jq nuttig.

JSON naar C#-voorbeelden

Voorbeeld: JSON-object naar C#-klasse

JSON-invoer:

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

Gegenereerde 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; }
}

Veelgestelde vragen

Hoe deserialiseer ik JSON in C#?

Gebruik JsonSerializer.Deserialize<JouwKlasse>(jsonString) van System.Text.Json, of JsonConvert.DeserializeObject<JouwKlasse>(jsonString) van Newtonsoft.Json. Je hebt een bijpassende C#-klasse nodig — genereer er een hier door je JSON te plakken.

Wat als mijn JSON-sleutels niet overeenkomen met C#-naamconventies?

Gebruik [JsonPropertyName("json_key")] op de property (System.Text.Json), of [JsonProperty("json_key")] (Newtonsoft). Je kunt ook JsonSerializerOptions.PropertyNamingPolicy instellen op JsonNamingPolicy.CamelCase voor automatische mapping.

Hoe zit het met nullable referentietypes in C#?

Schakel Nullable Types in de configuratie in om string?, int?, etc. te genereren. Handig als JSON-velden null of afwezig kunnen zijn. Je hebt #nullable enable of een nullable-bewuste projectinstelling nodig.

Wordt mijn JSON naar een server gestuurd?

Nee. De klasse-generatie werkt volledig in je browser. Je JSON verlaat nooit je machine, dus veilig te gebruiken met productie API-sleutels of gevoelige data.

Properties vs velden — welke moet ik gebruiken?

Properties (get; set;) zijn de standaard voor DTOs in C#. Zowel System.Text.Json als Newtonsoft.Json serialiseren standaard publieke properties. Velden werken, maar zijn minder gebruikelijk voor datatransferobjecten.

Gerelateerde hulpmiddelen

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