.NET

Serialización JSON

System.Text.Json, JsonSerializer, custom converters, naming policies, manejo de nulls

20 preguntas de entrevista·
Mid-Level
1

¿Cuál es el namespace principal para la serialización JSON en .NET moderno?

Respuesta

System.Text.Json es el namespace oficial para la serialización JSON en .NET Core 3.0+. Reemplaza progresivamente a Newtonsoft.Json (Json.NET) ya que es más eficiente, está integrado en el framework y optimizado para escenarios modernos. Newtonsoft.Json sigue disponible vía NuGet para compatibilidad hacia atrás o funcionalidades avanzadas no disponibles en System.Text.Json.

2

¿Qué método usar para serializar un objeto C# a una cadena JSON?

Respuesta

JsonSerializer.Serialize convierte un objeto C# en una cadena JSON. Este método estático acepta el objeto a serializar y opcionalmente JsonSerializerOptions para personalizar el comportamiento. Serialize devuelve un string, mientras que SerializeToUtf8Bytes devuelve un byte[] para optimizar el rendimiento evitando la asignación de string.

3

¿Cuál es la convención de nomenclatura por defecto de System.Text.Json para las propiedades JSON?

Respuesta

Por defecto, System.Text.Json conserva exactamente los nombres de las propiedades C# (PascalCase sensible a mayúsculas). Si una propiedad C# se llama UserName, el JSON contendrá UserName. Para obtener camelCase (userName), hay que configurar JsonSerializerOptions con PropertyNamingPolicy = JsonNamingPolicy.CamelCase. Esto difiere de Newtonsoft.Json, que usa camelCase por defecto.

4

¿Cómo deserializar una cadena JSON en un objeto C# tipado?

5

¿Qué atributo usar para ignorar una propiedad durante la serialización JSON?

+17 preguntas de entrevista

Domina .NET para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis