尝试使用将读取特定环境变量的配置(在这种情况下,它是什么环境,即测试,暂存,预发布等)。
我尝试使用以下方法设置变量:
export Environment=Staging
还试图将其简单地添加到/ etc / environment中。还发现了一种情况,我应该使用App__Environment = Staging。
我尝试使用“配置”构建器和Environment.GetEnvironmentVariable。
这是我尝试过的东西
var config = new ConfigurationBuilder()
.AddEnvironmentVariables()
.Build();
Environment.GetEnvironmentVariable("Environment", EnvironmentVariableTarget.Machine);
Environment.GetEnvironmentVariable("Environment", EnvironmentVariableTarget.Process);
Environment.GetEnvironmentVariable("Environment", EnvironmentVariableTarget.User);
Environment.GetEnvironmentVariable("Environment");
我可以看到我在ubuntu上的环境变量具有:
App__Environment=Staging
EnvironmentName=Staging
Environment=Staging
我还尝试添加到ConfigurationBuilder.AddEnvironmentVariables(“ App _”)
与两天以上的战斗而无法解决(我只是今天意识到存在一个问题,因为在缺少环境变量的情况下默认配置存在后备功能)
.Net Core 2.2 / ubuntu 18.04