Asp.net Azure 上的核心 6 应用默认使用开发环境?

Asp.net core 6 app on Azure uses Development environment by default?

我正在使用 ASP.NET Core 6。在我的本地机器上,由于 launchSettings.json.[=17,它正确地使用了我的开发应用程序设置(来自 appsettings.Development.json 的设置) =]

当我在 linux 服务器上发布它时,它正确地使用了我的生产应用程序设置(来自 appsettings.json 的设置)。

但是当我将它上传到 Azure 时,它​​默认使用开发环境,我不知道为什么。我什至在 Azure 中添加了 ASPNETCORE_ENVIRONMENT 设置为 Production,但它被忽略了。我唯一的解决方法是从服务器中删除 appsettings.Development.json 文件...

知道是什么原因造成的吗?

在解决方案中搜索ASPNETCORE_ENVIRONMENT,发现在web.config文件中设置为Development。我记得我曾尝试在 IIS 下本地 运行 应用程序,但不记得我设置了变量。我猜它当时创建了文件。

因此,如果您处于相同情况,请考虑可能影响发布到 Azure 的 web.config 文件。

更新: 我做了测试。我创建了一个 IIS 启动配置。 VS 创建了 web.config 文件。然后我在UI中手动添加了ASPNETCORE_ENVIRONMENT。它将它添加到 web.config 文件中。在 UI 中,我删除了环境变量。你猜怎么着?它没有从文件中删除它...