WebDeploy到IIS - 如何删除目标服务器上的文件夹?
问题描述:
在目标服务器上,我想要删除App_Data文件夹下的文件夹(及其所有文件)。 它应该在我将新文件推送到目标服务器之前发生。WebDeploy到IIS - 如何删除目标服务器上的文件夹?
我该怎么办?
当前配置
<PropertyGroup>
<WebPublishMethod>MSDeploy</WebPublishMethod>
<LastUsedBuildConfiguration>QA</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish>http://qa.mysite.test:80/</SiteUrlToLaunchAfterPublish>
<LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<MSDeployServiceURL>https://my-server:8172/msdeploy.axd</MSDeployServiceURL>
<DeployIisAppPath>qa.mysite.test</DeployIisAppPath>
<RemoteSitePhysicalPath />
<SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
<MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
<EnableMSDeployBackup>True</EnableMSDeployBackup>
</PropertyGroup>
答
WebDeploy到IIS - 如何删除目标服务器上的文件夹?
您可以的MSBuild检查出删除任务:
http://msdn2.microsoft.com/en-us/library/7wd15byf.aspx
你可能会创建一个PropertyGroup
将包含要删除的文件的文件夹,然后添加delate
任务到AfterBuild
目标:
<PropertyGroup>
<AppDataFolder>AppdataFoler</AppDataFolder>
</PropertyGroup>
要做到这一点,卸载你的项目,编辑项目文件.csproj。然后,在项目的最后,刚刚结束标记之前,请将下面的脚本:
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Test" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<AppdataFolder>\\YourServer\Appdata</AppdataFolder>
</PropertyGroup>
<Target Name="AfterBuild">
<Delete Files="$(AppdataFolder)\YourDeleteFile" />
</Target>
</Project>