如何在Asp.Net Core中使用Environment变量? 我已经在我的系统中添加了一个环境变量并重新启动了我的PC,但是当我运行一个应用程序并获取环境变量时,我不会看到我的变量。
Environment.GetEnvironmentVariables();
此外,当我在代码中添加环境时,它工作正常:
Environment.SetEnvironmentVariable("my-credentials-key", my-value);
您是否知道如何添加Environment变量并在ASP.NET核心应用程序中使用它?
答案 0 :(得分:1)
这就是我在我的应用程序中使用环境变量的方法 -
在Visual Studio中,使用launchSettings.json
-
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"MY_TEST":"123"
}
},
"SamplePractice": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "http://localhost:5000",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"MY_TEST":"123"
}
}
}
由于launchSettings.json
仅限于Visual Studio,如果是发布版本,我们会使用web.config
-
<aspNetCore processPath="dotnet" arguments=".\MyAspNetCoreApplication.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false" >
<environmentVariables>
<environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />
<environmentVariable name="MY_TEST" value="123" />
</environmentVariables>
</aspNetCore>
此环境值将使用 -
在应用程序中读取Environment.GetEnvironmentVariable("MY_TEST");
答案 1 :(得分:0)
简而言之,在launchSettings.json文件中,您可以为每个主机定义环境变量。例如,您可以使用IIS的暂存环境,但可以使用自托管的开发和测试环境。
您可以在here找到更多信息。