当前位置 : 主页 > 网络编程 > ASP >

asp.net-mvc – 如何在发布期间跳过文件夹上的删除?

来源:互联网 收集:自由互联 发布时间:2021-06-24
我无法做到,因此Visual Studio中的Publish不会删除服务器网站上的App_Data文件夹.但我还希望它继续删除所有文件(该文件夹除外),以保持目录“干净”. 我在csproj,.pubxml中试过这个.和它的改动
我无法做到,因此Visual Studio中的Publish不会删除服务器网站上的App_Data文件夹.但我还希望它继续删除所有文件(该文件夹除外),以保持目录“干净”.

我在csproj,.pubxml中试过这个.和它的改动(一个不是OnBeforePackageUsingManifest,但我的东西)

<PropertyGroup>
  <OnBeforePackageUsingManifest>AddCustomSkipRules</OnBeforePackageUsingManifest>
</PropertyGroup>
<Target Name="AddCustomSkipRules">
  <ItemGroup>
    <MsDeploySkipRules Include="SkipDeleteAppData">
      <SkipAction>Delete</SkipAction>
      <ObjectName>filePath</ObjectName>
      <AbsolutePath>$(_Escaped_PackageTempDir)\\App_Data\\.*</AbsolutePath>
      <XPath>
      </XPath>
    </MsDeploySkipRules>
    <MsDeploySkipRules Include="SkipDeleteAppData">
      <SkipAction>Delete</SkipAction>
      <ObjectName>dirPath</ObjectName>
      <AbsolutePath>$(_Escaped_PackageTempDir)\\App_Data\\.*</AbsolutePath>
      <XPath>
      </XPath>
    </MsDeploySkipRules>
  </ItemGroup>
</Target>

如果我使用“SkipAction = Delete”,我甚至无法这样做,因为无法识别删除.

有没有办法做到这一点?最好是从.pubxml,但csproj也会这样做.不必处理msdeploy命令行.

使用visual studio 2015.

这(最近) SO answer提到MsDeploySkipRules设置仅在通过命令行发布时才有效.

从VS IDE进行Web部署时,建议检查以下选项:

>删除目的地的其他文件
>从App_Data文件夹中排除文件

网友评论