Le problème est donc de chaîner des variables pour une raison quelconque dans msbuild. Ce qui suit fonctionne pour moi, notez que je ne dois utiliser que des chemins relatifs basés sur la variable MSBuildProjectDirectory.
<CreateItem Include="$(MSBuildProjectDirectory)\..\Client\Web\Foo.Web.UI\**\*.*"
Exclude="$(MSBuildProjectDirectory)\..\Client\Web\Foo.Web.UI\**\.svn\**">
<Output TaskParameter="Include" ItemName="WebFiles" />
</CreateItem>
Ce qui suit ne fonctionne pas:
<PropertyGroup>
<WebProjectDir>$(MSBuildProjectDirectory)\..\Client\Web\Foo.Web.UI</WebProjectDir>
</PropertyGroup>
<CreateItem Include="$(WebProjectDir)\**\*.*"
Exclude="$(WebProjectDir)\**\.svn\**">
<Output TaskParameter="Include" ItemName="WebFiles" />
</CreateItem>
Très étrange! Je viens de passer comme 3 heures sur celui-ci.