Я нашел обходной путь для этой проблемы: дублируйте команды вручную.
Так что он менее универсален и производит еще больше шума в файле buildlog, но, по крайней мере, работает!
<!-- Copy the updated files to the Binariesroot to have them picked up by the Setups -->
<CreateItem Include="$(Destination)\**\*.Generated.*.sql">
<Output TaskParameter="Include" ItemName="GeneratedSqlFiles" />
</CreateItem>
<Message Text="GeneratedSqlFiles=@(GeneratedSqlFiles)->RecursiveDir=%(RecursiveDir) Filename=%(Filename)%(Extension)" />
<CreateProperty Condition=" '%(ConfigurationToBuild.FlavorToBuild)'=='Debug'"
Value="$(BinariesRoot)\%(ConfigurationToBuild.PlatformToBuild)\%(ConfigurationToBuild.FlavorToBuild)" >
<Output TaskParameter="Value" PropertyName="RealBinariesRoot" />
</CreateProperty>
<Copy Condition=" '%(ConfigurationToBuild.FlavorToBuild)'=='Debug'"
SourceFiles="@(GeneratedSqlFiles)"
DestinationFiles="@(GeneratedSqlFiles->'$(RealBinariesRoot)\Deployment\%(RecursiveDir)%(Filename)%(Extension)')"
/>
<CreateProperty Condition=" '%(ConfigurationToBuild.FlavorToBuild)'=='WebService'"
Value="$(BinariesRoot)\%(ConfigurationToBuild.PlatformToBuild)\%(ConfigurationToBuild.FlavorToBuild)" >
<Output TaskParameter="Value" PropertyName="RealBinariesRoot" />
</CreateProperty>
<Copy Condition=" '%(ConfigurationToBuild.FlavorToBuild)'=='WebService'"
SourceFiles="@(GeneratedSqlFiles)"
DestinationFiles="@(GeneratedSqlFiles->'$(RealBinariesRoot)\Deployment\%(RecursiveDir)%(Filename)%(Extension)')"
/>
Тем временем также обнаруживается, что если у вас есть «.» в пути «Включить» задачи CreateItem свойство RecursiveDir больше не заполняется.
Итак, имея
'диск: \ somefolder \ subfolder \ Sources \ Generated ***. Generated. *. Sql' предоставит метаданные% (RecursiveDir).
Использование
'диск: \ somefolder \ subfolder \. \ Sources \ Generated ***. Generated. *. Sql', который разрешается по тому же пути, что и выше, NOT предоставит метаданные% (RecursiveDir) , (обратите внимание на тонкое «.» между подпапкой и источниками)
Конечно (закон Мерфи), мы используем это, чтобы указать, с какой ветвью нужно построить, с помощью. указывая на главную ветку; -)