Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se ha corregido el error mencionado en la salida de la consola de la CLI usa UTF-8 (cambio importante), por el que el SDK de .NET cambiaba la codificación de toda la consola. La codificación de la consola ya no permanece UTF-8 después de que el SDK de .NET ejecute un comando. Es posible que los usuarios se basen en ese comportamiento, por lo que se trata de un cambio importante.
Además, el SDK de .NET ya no cambia la codificación a UTF-8 en versiones anteriores de Windows 10 que no lo admiten completamente.
Comportamiento anterior
- El SDK cambió la codificación de un terminal después de ejecutar un comando como
dotnet build
. - El SDK usó la codificación UTF-8 para representar correctamente caracteres no en inglés, incluso en versiones de Windows 10 que no admitieron oficialmente UTF-8. El comportamiento no estaba definido en esas versiones.
Nuevo comportamiento
- El SDK no cambia la codificación del terminal después de salir de otros programas.
- De forma predeterminada, el SDK ya no usa UTF-8 para versiones de Windows que no lo admiten.
Versión introducida
7.0.3xx .NET 8 Preview 3
Tipo de cambio disruptivo
Este cambio puede afectar a la compatibilidad binaria. También es un cambio de comportamiento.
Motivo del cambio
Hubo un error existente en el que el SDK de .NET afectaba a la codificación en la consola de otros programas. Ese error se ha corregido y ha dado lugar a este cambio importante.
Las versiones anteriores de Windows 10 (es decir, las versiones anteriores a la actualización de noviembre de 2019) no admitieron UTF-8, por lo que el comportamiento predeterminado no debe ser usar la codificación UTF-8. En su lugar, ahora hay disponible una opción de suscripción.
Acción recomendada
Si la aplicación necesita cambiar la página de códigos en Windows, puede ejecutar un proceso para invocar el chcp
comando. La aplicación no debe depender del SDK de .NET para cambiar la codificación.
Para versiones anteriores de Windows 10 que no admiten oficialmente UTF-8 donde desea que el SDK de .NET siga modificando la codificación a UTF-8 para idiomas distintos del inglés, puede establecer la variable de entorno DOTNET_CLI_FORCE_UTF8_ENCODING
en true
o en 1.