MSBuild复制任务按需或保存

时间:2017-05-02 13:43:32

标签: msbuild visual-studio-2017 csproj

我有一个csproj文件,可以在build上复制共享(链接)文件,如下所示:

  <Target Name="CopyLinkedContentFiles" BeforeTargets="Build">
    <Copy SourceFiles="%(None.Identity)" DestinationFiles="%(None.Link)" SkipUnchangedFiles="true" OverwriteReadOnlyFiles="true" ContinueOnError="true" Condition="'%(None.Link)' != ''" />
  </Target>

我将它用于核心ts和css文件。现在,每次我更改这些文件中的内容时,我都必须重建,以便在打开的解决方案中更新这些文件。

有没有办法可以做到这些:

  1. 手动触发其中一个文件的副本
  2. 创建任务以自动复制保存任何这些文件
  3. 我无法预见的另一种方式?
  4. 谢谢!

1 个答案:

答案 0 :(得分:0)

在项目文件中调用目标的唯一方法是启动msbuild。如果您不希望调用Build目标(这实际上是VS中的构建目标:call msbuild /t:Build),您可以添加外部命令(转到&#39; Tools-&gt; External工具......&#39;)并为其指定按钮和/或键盘快捷键。该命令应该是&#39; msbuild.exe&#39; (完整路径,如果需要),参数&#39; $(ProjectDir)$(ProjectFileName)/ t:CopyLinkedContentFiles&#39;。