我想用AfterBuild
目标复制整个项目结构到一个单独的文件夹中。 这是项目结构
TANKProject
|
|__TANK.CLI
|__TANK.Core
|__TANK.Web
我想整个项目结构,包括复制bin
文件夹和.sln
文件夹到一个位置B:\animesh\repos
。
要做到这一点,我把下面的代码片段在AfterBuild
在每个目标.csproj
文件:
<ItemGroup>
<_CustomFiles Include="..\TANK.ProjectName\*.*" />
</ItemGroup>
<Copy
SourceFiles="@(_CustomFiles)"
DestinationFiles="B:\repos\TANK"
SkipUnchangedFiles="true" />
我收到以下错误,而建设项目:
"DestinationFiles" refers to 3 item(s), and "SourceFiles" refers to 1 item(s). They must have the same number of items.
我缺少的是在这里吗?
解
基于AdrianMonk的回答,我改变了我的AfterBuild
这样的配置:
<Target Name="AfterBuild">
<ItemGroup>
<_CustomFiles Include="..\**" />
</ItemGroup>
<Copy
SourceFiles="@(_CustomFiles)"
DestinationFiles="@(_CustomFiles->'B:\repos\TANK\%(RecursiveDir)%(Filename)%(Extension)')"
SkipUnchangedFiles="true" />
</Target>
我把这个AfterBuild
目标只是其中一个项目,因为这将是足够的。