Priorité des variables d’environnement préfixées avec ASPNET

Au démarrage dans .NET 7, et uniquement lors de l’utilisation de l’hôte WebApplicationBuilder, des arguments de ligne de commande et des variables d’environnement préétablies par DOTNET_ remplacent les variables d’environnement préétablies par ASPNET_ lors de la lecture à partir de sources de configuration d’hôte par défaut. Ces sources sont utilisées pour lire des variables hôtes, telles que le chemin racine de contenu et le nom de l’environnement, lorsque WebApplicationBuilder est construit et sert de base à la configuration de l’application.

Les variables d’environnement préétablies par ASPNET_ ont désormais la priorité la plus basse de toutes les sources de configuration d’hôte par défaut pour WebApplicationBuilder. Pour les autres hôtes, tels que ConfigureWebHostDefaults et WebHost.CreateDefaultBuilder, les variables d’environnement préétablies par ASPNET_ ont toujours la priorité la plus élevée.

Version introduite

ASP.NET Core 7.0

Comportement précédent

Les variables d’environnement préétablies par ASPNET_ remplacent les arguments de ligne de commande et les variables d’environnement préétablies par DOTNET_ lors de la lecture de la configuration d’hôte par défaut de WebApplicationBuilder.

Nouveau comportement

Les arguments de ligne de commande et les variables d’environnement préétablies par DOTNET_ remplacent les variables d’environnement préétablies par ASPNET_ lors de la lecture de la configuration d’hôte par défaut de WebApplicationBuilder.

Type de changement cassant

Il s’agit d’un changement de comportement.

Raison du changement

Cette modification a été apportée pour empêcher les variables d’environnement de remplacer les arguments de ligne de commande explicites lors de la lecture des variables hôtes. Le nouveau comportement est plus cohérent avec la configuration de l’application, qui a toujours donné la priorité la plus élevée aux arguments de ligne de commande.

Si vous utilisiez des variables d’environnement préétablies par ASPNETCORE_ pour remplacer les arguments de ligne de commande ou des variables d’environnement préétablies par DOTNET_, utilisez un élément avec une priorité plus élevée. Cela peut signifier l’utilisation de WebApplicationOptions personnalisées qui remplacent toutes les sources de configuration d’hôte par défaut.

API affectées

Voir aussi