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
文件。
...但是我应该如何添加这些构建步骤?什么是目标的可扩展性点和事件?
答案 0 :(得分:0)
Pubxml配置仍然在构建时发生,它假设您将同时部署并允许您相应地调整配置。
如果要进行真正的部署时配置更改,则应使用WebDeploy参数化。它的功能更强大,并在部署WebDeploy包时应用。
我们将它用于4个不同环境(DEV,QA,MOCK,PROD)的50多个产品部署,并取得了巨大成功。
http://www.dotnetcatch.com/2014/09/08/parameterizationpreview-visual-studio-extension/