如何在MSBuild中排除目录的内容而不是目录本身

如何在MSBuild中排除目录的内容而不是目录本身,msbuild,web-deployment-project,Msbuild,Web Deployment Project,我正在使用WebDeploymentProject2008构建我的Web应用程序。我想排除从构建中的几个文件夹的内容,但保持空白目录本身。然而,如果我这样做 <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\ImageCache\**\*.*" /> 它将排除ImageCache目录本身。那么我如何保存目录呢?提前谢谢?恐怕您必须分两行来完成这项工作: <ExcludeFromBuild Include="$(Source

我正在使用WebDeploymentProject2008构建我的Web应用程序。我想排除从构建中的几个文件夹的内容,但保持空白目录本身。然而,如果我这样做

<ExcludeFromBuild Include="$(SourceWebPhysicalPath)\ImageCache\**\*.*" />

它将排除ImageCache目录本身。那么我如何保存目录呢?提前谢谢?

恐怕您必须分两行来完成这项工作:

<ExcludeFromBuild Include="$(SourceWebPhysicalPath)\ImageCache\**\*.*" />
<IncludeFromBuild Include="$(SourceWebPhysicalPath)\ImageCache\" />

我已将此标记为正确答案,因为我最终分两步完成了此操作。ExcludeFromBuild是第一个,但第二个是在AfterBuild目标中调用MakeDir,否则该目录不是在WDP复制部署代码的位置创建的。
<ItemGroup>
  <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\ImageCache\**\*.*" />
<ItemGroup>

<...>

<Target Name="AfterMerge">
  <MakeDir Directories="$(SourceWebPhysicalPath)\ImageCache" />
</Target>