我将应用程序部署到Azure网站。我已经配置了发布配置文件,并将tfspreview.com设置为使用每个代码提交上的持续集成自动发布。
我在路径“/ media”上有一个文件夹。该文件夹具有通过CMS(umbraco)上传的图片和文档。每个Web部署都会删除此文件夹。
从this answer起,我学习了如何在.csproj或wpp.targets文件上添加一个SkipDelete规则,但是每当我发布整个文件夹被删除的时候,每次都会被删除。
这是我目前在wpp.targets内部使用的代码:
<PropertyGroup> <AfterAddIisSettingAndFileContentsToSourceManifest> AddCustomSkipRules </AfterAddIisSettingAndFileContentsToSourceManifest> </PropertyGroup> <Target Name="AddCustomSkipRules"> <Message Text="Adding Custom Skip Rules" /> <ItemGroup> <MsDeploySkipRules Include="SkipMediaFolder"> <SkipAction>Delete</SkipAction> <ObjectName>filePath</ObjectName> <AbsolutePath>media</AbsolutePath> </MsDeploySkipRules> </ItemGroup> </Target> <PropertyGroup> <UseMsDeployExe>true</UseMsDeployExe> </PropertyGroup>