Start Debugging
2023-10-21 Actualizado 2023-11-05 dotnetdotnet-8 Edit on GitHub

System.Text.Json desactivar la serialización basada en reflexión

Aprende a desactivar la serialización basada en reflexión de System.Text.Json a partir de .NET 8 para aplicaciones trimmed y native AOT usando la propiedad JsonSerializerIsReflectionEnabledByDefault.

A partir de .NET 8 puedes desactivar el serializador basado en reflexión que viene por defecto con System.Text.Json. Esto puede ser útil en aplicaciones trimmed y native AOT en las que no quieres incluir los componentes de reflexión en tu compilación.

Puedes activar esta opción estableciendo la propiedad JsonSerializerIsReflectionEnabledByDefault a false en tu archivo .csproj.

<JsonSerializerIsReflectionEnabledByDefault>false</JsonSerializerIsReflectionEnabledByDefault>

Como efecto secundario, te verás obligado a proporcionar un JsonSerializerOptions al serializar y deserializar. No hacerlo se traducirá en una NotSupportedException en tiempo de ejecución.

Junto con esta opción, se introduce una nueva propiedad IsReflectionEnabledByDefault en JsonSerializer, que permite a los desarrolladores hacer una comprobación en tiempo de ejecución para ver si la característica está activa o no.

Comments

Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.

< Volver