Delen via


Omgevingsvariabelen hebben voorrang in de configuratie-instellingen van de app-runtime

Vanaf .NET 9 is de prioriteit van de configuratie van de app-runtime gewijzigd. Als zowel een omgevingsvariabele als een bijbehorende instelling in het (of projectbestand) van de toepassing runtimeconfig.json worden opgegeven, heeft de omgevingsvariabele voorrang op het configuratiebestand.

Geïntroduceerde versie

.NET 9

Vorig gedrag

Voorheen, toen zowel een omgevingsvariabele als de bijbehorende instelling in de toepassing runtimeconfig.json werden ingesteld, had de runtimeconfig.json prioriteit.

Denk bijvoorbeeld aan een toepassing met het volgende runtimeconfig.json bestand:

{
  "runtimeOptions": {
    "configProperties": {
      "System.GC.Server": true
    }
  }
}

Als de omgevingsvariabele DOTNET_gcServer is ingesteld op 0 (onwaar), gebruikt de toepassing nog steeds de garbagecollection van de server omdat de runtimeconfig.json instelling voorrang heeft. De omgevingsvariabele is effectief genegeerd.

Nieuw gedrag

Vanaf .NET 9 heeft de omgevingsvariabele voorrang wanneer zowel een omgevingsvariabele als de bijbehorende instelling in de toepassing runtimeconfig.json zijn ingesteld.

In het voorbeeld in de sectie Vorige Gedrag, als de omgevingsvariabele DOTNET_gcServer is ingesteld op 0 (onwaar), gebruikt de toepassing nu workstation-garbagecollection in plaats van server-garbagecollection, zelfs als runtimeconfig.jsonSystem.GC.Server als true specificeert. De omgevingsvariabele overschrijft de instelling van het configuratiebestand.

Type van brekende verandering

Deze wijziging is een gedragswijziging.

Reden voor wijziging

Het nieuwe gedrag is consistenter met de werking van de configuratie in .NET en elders, waarbij omgevingsvariabelen voorrang krijgen.

Als uw app wordt uitgevoerd in een omgeving met runtimeconfiguratieomgevingsvariabelen die zijn ingesteld op waarden die afwijken van de gewenste waarden, maakt u de omgevingsvariabele ongedaan of stelt u deze in op de gewenste configuratiewaarde.

Betreffende API's

Geen.

Zie ook