如何在Web Deploy pubxml文件中显式指定Web.config XML转换?

时间:2016-06-07 10:03:52

标签: web-config web-deployment msdeploy web.config-transform

Visual Studio中的Web部署和*.pubxml文件具有一个简洁的功能,允许在部署时应用web.config XML转换,而不仅仅是构建时,这可以实现每个部署(即每个环境) )web.config自定义。

问题是,转变发生了#34;魔术" - 如果您的网站根目录中有一个名为web.{profile name}.config的文件,那么它将在发布期间应用 - 但您无法禁用此功能,或者(据我所知)指定不同的转换文件。我也看不出如何使用Views/web.config文件转换其他web.config文件(例如MVC项目中的pubxml文件)。

我确实注意到pubxml文件本身就是MSBuild XML文件 - 所以显然部署过程只是用正确的目标执行那些MSBuild文件 - 所以要获得我想要的功能,我只需要使用自己的自定义构建步骤修改pubxml文件。

...但是我应该如何添加这些构建步骤?什么是目标的可扩展性点和事件?

1 个答案:

答案 0 :(得分:0)

Pubxml配置仍然在构建时发生,它假设您将同时部署并允许您相应地调整配置。

如果要进行真正的部署时配置更改,则应使用WebDeploy参数化。它的功能更强大,并在部署WebDeploy包时应用。

我们将它用于4个不同环境(DEV,QA,MOCK,PROD)的50多个产品部署,并取得了巨大成功。

http://www.dotnetcatch.com/2014/09/08/parameterizationpreview-visual-studio-extension/