【发布时间】:2020-05-05 14:07:05
【问题描述】:
我有一个在 Azure 中运行的 ASP.NET Web 应用程序。在我的 webconfig 文件中,我有一些 appsetttings 值,我不会在不同的环境中有所不同。
在 Azure 门户中,我转到我的应用服务,单击配置并添加值。我使用与我的 webconfig 中相同的名称添加它们。
当我签入我的代码时,我有一个自动部署。我的部署正在运行,但我的 webconfig 文件中的值没有被替换。
另外部署完成后,我在门户中输入的所有设置都没有了。
我错过了什么? 我是否需要在我的部署 (azure dev ops) 中添加一个步骤来替换这些设置? 为什么部署后设置会被删除? 以及“部署设置槽”复选框究竟是做什么的?
更新:查看我的发布管道并转到:
管道 > 任务 > Azure 应用服务部署 > 应用程序和 配置设置
并添加设置,部署后值不再丢失 - 太好了。
但是,当我查看实际的 Web.config 文件时,这些值并没有被 Azure 中的值替换。
应用服务 > 设置 > 配置
所以现在我可以看到我想要的值,但它们并没有出现在 web.config 文件中。
有什么想法吗?
【问题讨论】:
-
Azure 应用设置覆盖配置文件中的值。他们不会替换它们。如果您在 Web 应用程序上设置的值被删除或替换为不正确的值,这是另一个问题,与您的部署过程有关。如果您需要帮助,您需要提供有关如何自动化配置和部署过程的详细信息。
-
@DanielMann - 请查看更新后的问题
-
我的评论仍然有效:Azure 应用设置不要替换 web.config 中的值。它们在运行时覆盖这些值。基本上,web.config 中的值变得无关紧要。您看不到 web.config 更改,因为这不应该发生。
-
@DanielMann - 是的,现在我明白了......我实际上让它按照我想要的方式工作,但我没有意识到 webconfig 文件没有改变,但在运行时它将使用门户中的值...谢谢 Dan...
标签: azure azure-devops web-config azure-web-app-service