我有一个ASP.NET Web应用程序,我正在部署,并且试图找出最佳方法来管理应该在启动时指向哪个环境,并确保我没有忽略任何选项。什么是远程配置正在运行的asp.net web应用程序的最佳方式?
首先有点背景。
该应用程序是网页从一个构建服务器自动部署,使用由所述持续构建产生的伪影。部署软件包包含了每个可用的环境配置设置,所以你最终的东西是这样的:
/Config/Environments/Development.xml
/Config/Environments/UAT.xml
/Config/Environments/Production.xml
的问题是,什么是来指示该应用程序的最佳方式,当它启动时,它应该处于何种环境配置文件加载?
理想情况下,我想能够改变运行的应用程序如果有可能的当前环境下,但我很高兴能跳过这个现在是如果需要的话我可以一直做了重新部署。
我也想避免改变任何由构建创建的文物,特别是因为其部署到Web包是一个zip文件,这样做将意味着重建Web部署包。
我想出了以下选项:
使用环境变量在目标机器上,在与启动什么样的环境了暗示,如果不存在,默认情况下发展。这样做的主要缺点是我不能在指向不同环境的同一台机器上运行应用程序的两个实例,并且由于我们通常将uat和临时环境部署到同一台机器,这可能会成为问题。
远程编辑web.config指示着,我不知道如何做到这一点就其环境,但它可能是最好的选择(?)。
您可以使用web部署来做些事情,例如告诉它在运行时设置web.config的值,但我不知道这是否可行(?)。
我是否缺少明显的东西?任何帮助将不胜感激!