Serialización y deserialización de JSON en .NET: información general
El espacio de nombres System.Text.Json proporciona funcionalidad para serializar y deserializar desde JSON (notaciones de objetos JavaScript).
El diseño de biblioteca resalta el rendimiento elevado y la asignación de memoria baja en un amplio conjunto de características. La compatibilidad integrada con UTF-8 optimiza el proceso de lectura y escritura de texto JSON codificado como UTF-8, que es la codificación más frecuente de los datos en Internet y los archivos en disco.
La biblioteca también proporciona clases para trabajar con un Document Object Model (DOM) en memoria. Esta característica permite el acceso de solo lectura aleatorio de los elementos de una cadena o archivo JSON.
Cómo obtener la biblioteca
La biblioteca está integrada como parte del marco compartido para .NET Core 3.0 y versiones posteriores.
Para versiones anteriores del marco, instale el paquete System.Text.Json de NuGet, que admite lo siguiente:
- .NET Standard 2.0 y versiones posteriores
- .NET Framework 4.7.2 y versiones posteriores
- .NET Core 2.0, 2.1 y 2.2
Recursos adicionales
- Cómo usar la biblioteca
- Creación de instancias de JsonSerializerOptions
- Habilitación de la coincidencia sin distinción entre mayúsculas y minúsculas
- Personalización de los nombres y valores de propiedad
- Omisión de propiedades
- Permiso del formato JSON no válido
- JSON de desbordamiento de control
- Conservación de las referencias
- Tipos inmutables y descriptores de acceso no públicos
- Serialización polimórfica
- Migración desde Newtonsoft.Json a System.Text.Json
- Personalización de la codificación de caracteres
- Escritura de serializadores y deserializadores personalizados
- Escritura de convertidores personalizados para la serialización de JSON
- Compatibilidad con DateTime y DateTimeOffset
- Referencia de API de System.Text.Json
- Referencia de API de System.Text.Json.Serialization