.NET

JSON-serialisatie

System.Text.Json, JsonSerializer, custom converters, naming policies, null-afhandeling

20 gespreksvragen·
Mid-Level
1

Wat is de belangrijkste namespace voor JSON-serialisatie in modern .NET?

Antwoord

System.Text.Json is de officiële namespace voor JSON-serialisatie in .NET Core 3.0+. Het vervangt geleidelijk Newtonsoft.Json (Json.NET) omdat het performanter is, geïntegreerd in het framework en geoptimaliseerd voor moderne scenario's. Newtonsoft.Json blijft beschikbaar via NuGet voor achterwaartse compatibiliteit of geavanceerde functies die niet beschikbaar zijn in System.Text.Json.

2

Welke methode gebruik je om een C#-object naar een JSON-string te serialiseren?

Antwoord

JsonSerializer.Serialize converteert een C#-object naar een JSON-string. Deze statische methode accepteert het te serialiseren object en optioneel JsonSerializerOptions om het gedrag aan te passen. Serialize retourneert een string, terwijl SerializeToUtf8Bytes een byte[] retourneert om de prestaties te optimaliseren door string-allocatie te vermijden.

3

Wat is de standaard naamgevingsconventie van System.Text.Json voor JSON-eigenschappen?

Antwoord

Standaard behoudt System.Text.Json de C#-eigenschapsnamen exact (hoofdlettergevoelige PascalCase). Als een C#-eigenschap UserName heet, bevat de JSON UserName. Om camelCase (userName) te krijgen, moet je JsonSerializerOptions configureren met PropertyNamingPolicy = JsonNamingPolicy.CamelCase. Dit verschilt van Newtonsoft.Json, dat standaard camelCase gebruikt.

4

Hoe deserialiseer je een JSON-string naar een getypeerd C#-object?

5

Welk attribuut gebruik je om een eigenschap te negeren tijdens JSON-serialisatie?

+17 gespreksvragen

Beheers .NET voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis