web-dev-qa-db-ja.com

ASP.NET Core:AddEnvironmentVariablesが変数を読み込まない

_asp.net core_アプリケーション(_.NET Core 2.1_)があります。 ConfigureServicesクラスのStartupメソッドにコードがあります:

_Configuration = new ConfigurationBuilder()
    .SetBasePath(_hostingEnvironment.ContentRootPath)
    .AddJsonFile("appsettings.json", false, true)
    .AddJsonFile($"appsettings.{_hostingEnvironment.EnvironmentName}.json", false, true)
    .AddEnvironmentVariables("MyApp:")
    .Build(); 
_

また、私はsystem環境変数_MyApp:DumpFolder_を設定して、_appsettings.json_のDumpFolder設定を上書きします。そしてここで私は奇妙な行動に直面しました:

  1. _visual studio_からF5を指定してアプリケーションを実行すると、システム環境変数が表示されません
  2. _bin/Debug_を使用して_dotnet MyApp.dll_フォルダーからビルドして実行すると、変数が正しく読み込まれます。

私は_asp.net core_を検査し、デフォルトで(指定されたEnvironmentVariableTargetなしで)現在のプロセスから変数を取得するEnvironment.GetEnvironmentVariables()メソッドを使用していることを確認しました。 _visual studio_からアプリケーションを実行したときに変数が読み込まれないのはなぜですか?

5
mtkachenko

Visual Studioを再起動します。

おそらく環境変数を宣言しただけなので、Visual Studioには表示されません。

0
Simonare