Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Från och med .NET 9 har prioriteten för hur appens körningskonfiguration fastställs ändrats. Om både en miljövariabel och en motsvarande inställning i programmets (eller projektfilen) tillhandahålls har miljövariabeln företräde framför konfigurationsfilen runtimeconfig.json .
Version lanserad
.NET 9
Tidigare beteende
Tidigare, när både en miljövariabel och motsvarande inställning i applikationens runtimeconfig.json var inställda, hade runtimeconfig.json företräde.
Tänk dig till exempel ett program med följande runtimeconfig.json fil:
{
"runtimeOptions": {
"configProperties": {
"System.GC.Server": true
}
}
}
Om miljövariabeln DOTNET_gcServer var inställd på 0 (false) skulle programmet fortfarande använda serverskräpinsamling eftersom runtimeconfig.json inställningen hade företräde. Miljövariabeln ignorerades effektivt.
Nytt beteende
Från och med .NET 9, när både en miljövariabel och motsvarande inställning i programmets runtimeconfig.json anges, har miljövariabeln företräde.
Om miljövariabeln är inställd DOTNET_gcServer på (false) med samma exempel som i avsnittet 0 använder programmet nu skräpinsamling för arbetsstation i stället för serverskräpinsamling, även om runtimeconfig.json anger System.GC.Server som true. Miljövariabeln åsidosätter konfigurationsfilinställningen.
Typ av brytande ändring
Den här ändringen är en beteendeförändring.
Orsak till ändring
Det nya beteendet är mer konsekvent med hur konfigurationen tenderar att fungera i .NET och på andra platser, med miljövariabler som prioriteras.
Rekommenderad åtgärd
Om appen körs i en miljö med miljövariabler för körningskonfiguration inställda på värden som skiljer sig från vad som önskas kan du antingen ta bort miljövariabeln eller ställa in den på önskat konfigurationsvärde.
Berörda API:er
Ingen.