如何正确地将msbuild属性传递给另一个msbuild脚本?

mar*_*ark 5 msbuild

我有一个master.proj msbuild脚本,它使用该MSBuild任务构建了几个项目.

这是一个典型的例子:

<Target Name="Log4PostSharp" DependsOnTargets="log4net">
  <MSBuild Projects="Log4PostSharp\Log4PostSharp.sln" Properties="Configuration=$(Configuration)" />
</Target>
Run Code Online (Sandbox Code Playgroud)

但是,我的问题是如果在命令行上给出更多属性,它们不会传递给MSBuild任务.

有没有办法传递MSBuild任务命令行上给出的所有属性?

谢谢.

Jul*_*rau 3

您必须将额外的属性作为属性中以分号分隔的属性名称/值对列表的形式显式传递Properties。这并不漂亮,但这是要走的路:

<Target Name="Log4PostSharp" DependsOnTargets="log4net">
  <MSBuild Projects="Log4PostSharp\Log4PostSharp.sln" 
           Properties="Configuration=$(Configuration);
                       Platform=$(Platform);
                       OtherPropertyPassInCommandLine=$(PropertyValue)" />
</Target>
Run Code Online (Sandbox Code Playgroud)