如何处理多个环境的多个web.config文件?

Nic*_*ick 27 c# asp.net web-applications

我目前处理这个问题的方法是使用多个配置文件,例如:

web.config
web.Prod.config
web.QA.config
web.Dev.config
Run Code Online (Sandbox Code Playgroud)

当项目部署到不同的环境时,我只需使用正确的设置重命名相应的文件.

有人建议如何更好地处理这个问题?

编辑:以下是每个配置中的一些变化:

  • WCF客户端端点URL和安全性
  • 自定义数据库配置
  • 会话连接字符串
  • log4net设置

PHe*_*erg 18

Scott Gu曾经有一篇关于此的文章.他提出的解决方案是使用Pre-build事件将正确的配置复制到位,具体取决于所选的构建配置.

我也注意到SO上已经存在类似的问题了.


小智 6

转换似乎对此非常有帮助.您可以使用不同的规则替换某些部分.

http://msdn.microsoft.com/en-us/library/dd465318(v=vs.100).aspx