【发布时间】:2019-10-15 23:41:21
【问题描述】:
我已将 Azure 函数部署到 Azure。我没有在应用程序设置中的任何位置或环境中的任何其他位置指定 AZURE_FUNCTIONS_ENVIRONMENT 为“开发”。
但是,当下面的代码执行时
var configurationBuilder = new ConfigurationBuilder()
.SetBasePath(basePath)
.AddJsonFile("appsettings.json", true, true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", true, reloadOnChange: true);
$"appsettings.{env.EnvironmentName}.json"resolves 为“appsettings.Development.json”,因此会加载开发配置而不是生产配置。
当我通过 Kudu 查看该环境的环境变量时,我根本看不到任何对 Development 的引用,实际上看到 WEBSITE_SLOT_NAME = Production 已配置(尽管这不一定与函数相关。
我的理解是,如果没有指定环境,则运行时默认为生产。因此,这对我来说意味着 Development 是在某处指定的。不过我不知道去哪里找。
问题: 是否可以在应用程序设置或环境变量中没有的地方指定开发?如果有,在哪里?有什么地方可以找到它,还是有任何其他解释为什么要加载开发配置而不是生产配置?我应该怎么做才能明确确保在生产环境中加载生产配置?
【问题讨论】:
标签: azure environment-variables azure-functions azure-deployment