在生产中切换 web.config 转换?

Switch web.config transformations in production?

我知道这是不可能的。

我希望有一种方法可以将 Web.config 文件的多个副本作为打包代码的一部分部署到生产环境(我们称它们为 Web.config.prodWeb.config.prodTest) 以便回归测试人员可以在不同命名空间(例如 prodtest.com)中的断开连接的生产服务器(使用 prodTest)上进行测试,然后再上线(例如,使用 prod在 prod.com) 上,没有进行两次单独的部署。

没有制作 PowerShell 脚本来换出值,我想不出一个好的方法来执行此操作。到目前为止,我见过的每个项目都有一个 .config 文件作为构建的一部分。

有人有什么建议吗?

谢谢!

对于某些设置(最有可能更改的设置),您可以将两者都放在 web.config 中并让代码 select 使用适当的配置。

<connectionstrings>
    <add name="ProductionDatabase" DataSource="production-db.mycompany.com" />
    <add name="TestDatabase" DataSource="test-db.mycompany.com" />
</connectionstrings>

但是,如果您不想那样做,欢迎您编写自己的 build/deployment 脚本并让它们完全按照您的意愿执行。