我正在将我的应用程序部署到 Azure 网站。我已成功配置发布配置文件并将 tfspreview.com 设置为在每次代码提交时使用持续集成自动发布。
我在路径“/ media”上有一个文件夹。此文件夹包含通过 CMS (umbraco) 上传的图片和文档。此文件夹在每次 Web 部署时都会被删除。
从这个答案中,我学会了如何在 .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>