sir*_*day 4 .net c# asp.net csproj node-modules
CopyToPublishDirectory发布dotnet应用时,我在.csproj中使用它来复制文件/文件夹:
<None Update="Views\**\*; wwwroot\**\*">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</None>
Run Code Online (Sandbox Code Playgroud)
有没有办法复制文件夹并在此过程中更改其名称?例如,我想复制一个node_modules文件夹的子集,所以我可以创建一个名为node_modules_devnpm依赖项子集的新文件夹,然后通过CopyToPublishDirectoryas 复制它node_modules。我想语法会像这样工作:
<None Update="node_modules_dev/**/*" Rename="node_modules">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</None>
Run Code Online (Sandbox Code Playgroud)
谢谢 -
这里的窍门是:
DefaultItemExcludes属性来完成,以便Web SDK会忽略文件。%(RecursiveDir)可用于通过glob模式扩展的项目的元数据,该元数据表示任何扩展路径的值。Include="…"因此,仅针对语法进行定义。这将使用Link元数据覆盖到新目录的默认目标路径:
<PropertyGroup>
<DefaultItemExcludes>$(DefaultItemExcludes);node_modules_dev\**</DefaultItemExcludes>
</PropertyGroup>
<ItemGroup>
<Content Include="node_modules_dev\**\*" Link="node_nodules\%(RecursiveDir)%(FileName)%(Extension)" CopyToPublishDirectory="PreserveNewest" />
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5147 次 |
| 最近记录: |