假设我有一个元数据的ItemGroup,需要一些时间来建立(10秒):我可以使用元数据缓存ItemGroup吗?
<Target Name="BuildItemGroup">
<ItemGroup>
<File Include="5">
<Value>5a</Value>
</File>
<File Include="4">
<Value>4a</Value>
</File>
...
</ItemGroup>
<Message Text="Wait 10 seconds..." Importance="High" />
</Target>
,我会使用相同的ItemGroup几次在递归MSBuild任务:
<Target Name="Recursive" DependsOnTargets="BuildItemGroup" Condition="$(Value) > 0" >
<PropertyGroup>
<Value>$([MSBuild]::Subtract($(Value), 1))</Value>
</PropertyGroup>
<MSBuild Projects="$(MSBuildProjectFile)" Targets="Recursive" Properties="Value=$(Value)" />
</Target>
<PropertyGroup>
<Value>5</Value>
</PropertyGroup>
<Target Name="Default" DependsOnTargets="Recursive" />
需要额外的40秒完成Recursive
任务的4个循环。有没有办法以这种方式缓存ItemGroup的循环使用?
是否有可以将ItemGroup +元数据写入文件的准备使用任务?并从该文件读取到ItemGroup? – 2014-12-08 00:49:09
:)我不知道一个。我可以试着把它们绑在一起(因为我可以看到你不是C#开发人员,对吗?)但今天绝对不会发生,并且不知道明天会发生什么。你可以等待或问这个 - 也许有人已经准备好了手上的东西 – 2014-12-08 01:56:42
对不起,这么久 - 看到我的答案更新。任务定义后样本目标中包含的用法 – 2014-12-16 11:44:12