Precedencia de la variable de entorno con prefijo de ASPNET

A partir de .NET 7, y solo cuando se utiliza el host WebApplicationBuilder, los argumentos de línea de comandos y las variables de entorno prefijadas DOTNET_ sustituyen a las variables de entorno prefijadas ASPNET_ cuando se leen de orígenes de configuración de host predeterminados. Estos orígenes se usan para leer variables de host, como la ruta de acceso raíz del contenido y el nombre del entorno, cuando WebApplicationBuilder se construye y sirve como base para la configuración de la aplicación.

Las variables de entorno con prefijo ASPNET_ ahora tienen la prioridad más baja de todos los orígenes de configuración de host predeterminados para WebApplicationBuilder. Para otros hosts, como ConfigureWebHostDefaults y WebHost.CreateDefaultBuilder, las variables de entorno con prefijo ASPNET_ siguen teniendo la prioridad más alta.

Versión introducida

ASP.NET Core 7.0

Comportamiento anterior

Las variables de entorno con prefijo ASPNET_ invalidaban los argumentos de línea de comandos y las variables de entorno con prefijo DOTNET_ al leer la configuración predeterminada del host de WebApplicationBuilder.

Comportamiento nuevo

Los argumentos de la línea de comandos y las variables de entorno con prefijo DOTNET_ anulan las variables de entorno con prefijo ASPNET_ al leer la configuración predeterminada del host de WebApplicationBuilder.

Tipo de cambio importante

También es un cambio de comportamiento.

Motivo del cambio

Este cambio se realizó para evitar que las variables de entorno invaliden argumentos explícitos de la línea de comandos al leer variables de host. El nuevo comportamiento es más coherente con la configuración de la aplicación, que siempre ha dado la máxima prioridad a los argumentos de la línea de comandos.

Si usaba variables de entorno con prefijo ASPNETCORE_ para invalidar argumentos de línea de comandos o variables de entorno con prefijo DOTNET_, use algo con una prioridad más alta. Esto podría significar el uso de WebApplicationOptions, que invalida todos los orígenes de configuración de hospedaje predeterminados.

API afectadas

Consulte también