.NET

Sérialisation JSON

System.Text.Json, JsonSerializer, custom converters, naming policies, null handling

20 questions d'entretien·
Confirmé
1

Quel est le namespace principal pour la sérialisation JSON dans .NET moderne ?

Réponse

System.Text.Json est le namespace officiel pour la sérialisation JSON dans .NET Core 3.0+. Il remplace progressivement Newtonsoft.Json (Json.NET) car il est plus performant, intégré au framework et optimisé pour les scénarios modernes. Newtonsoft.Json reste disponible via NuGet pour la rétrocompatibilité ou les fonctionnalités avancées non disponibles dans System.Text.Json.

2

Quelle méthode utiliser pour sérialiser un objet C# en chaîne JSON ?

Réponse

JsonSerializer.Serialize convertit un objet C# en chaîne JSON. Cette méthode statique accepte l'objet à sérialiser et optionnellement des JsonSerializerOptions pour personnaliser le comportement. Serialize retourne une string, tandis que SerializeToUtf8Bytes retourne un byte[] pour optimiser la performance en évitant l'allocation de string.

3

Quelle est la convention de nommage par défaut de System.Text.Json pour les propriétés JSON ?

Réponse

Par défaut, System.Text.Json préserve exactement les noms des propriétés C# (case-sensitive PascalCase). Si une propriété C# s'appelle UserName, le JSON contiendra UserName. Pour obtenir camelCase (userName), il faut configurer JsonSerializerOptions avec PropertyNamingPolicy = JsonNamingPolicy.CamelCase. Cela diffère de Newtonsoft.Json qui utilise camelCase par défaut.

4

Comment désérialiser une chaîne JSON en objet C# typé ?

5

Quel attribut utiliser pour ignorer une propriété lors de la sérialisation JSON ?

+17 questions d'entretien

Maîtrise .NET pour ton prochain entretien

Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.

Commencer gratuitement