我即将使用VS2012中的Web Deploy实用程序部署MVC4站点。因为我无法直接连接到服务器,所以我正在生成一个“Web Deploy Package”发布配置文件,我使用IIS>上传和部署它。导入包选项。
这一切都很好,但有一个例外。我需要站点内的虚拟目录指向服务器中的另一个文件夹(上传移动数据)。我可以毫无问题地创建这个虚拟目录,但每次我使用新版本部署软件包时,虚拟目录都会被删除,我必须记得再次创建它。
我要做的是自动化此虚拟目录的创建过程,但我无法找到如何实现它。我走的越远,就是找到一个PowerShell Cmdlet,它允许我创建一个新的虚拟目录New-WebVirtualDirectory。
是否可以自定义程序包创建以在部署后运行此cmdlet?
答案 0 :(得分:2)
您要做的是添加新的MSBuild任务AfterTargets ='MSDeployPublish'。
为此,您需要编辑csproj文件并使用您的powershell任务添加新目标。
看起来像这样:
<Target Name="PostPublishTarget" AfterTargets="MSDeployPublish">
<Exec Command="$PowershellCmdHere"/>
</Target>
的更多信息