web.config在安装程序中更改并基于目标环境

时间:2010-08-15 17:16:34

标签: visual-studio msbuild installer web-config windows-installer

需要一些Visual Studio项目的帮助,尤其是发布过程。要发布我的Web应用程序,我使用Web部署项目来部署我的Web应用程序。

我已将连接字符串和应用程序设置拆分为单独的配置文件,每个环境的配置文件我可能正在创建msi,例如。 dev,qa,staging,prod。

根据在web.config中设置的配置文件来选择配置文件。

因此,我希望在部署时执行以下任务列表:

  • 确保在web.config中将debuging设置为false。
  • 当我在特定环境中安装MSI时,我希望安装程序中的选项能够选择我正在安装MSI的环境,并且web.config被更改为指向配置文件为了那个环境。

我如何实现上述目标?我可以在MSI安装程序中创建自定义操作吗?如果是,如何创建?我应该看看介绍一个MsBuild任务,以确保我释放调试关闭。

请在上面提供一些相关信息。

1 个答案:

答案 0 :(得分:0)

如果您使用的是WiX,那么您可以add a new page设置属性来设置属性,以保存您要安装的环境类型。

之后,您需要使用DTF(包含在WiX中)在C#中编写自定义操作来检查属性的值并将正确的值写入web.config文件。相同的自定义操作也可以验证web.config中的调试值。