如何通过msbuild使我的项目依赖于其他项目?

时间:2014-10-30 11:55:46

标签: visual-studio msbuild

我只有其他项目的名称/位置,但我不想要求开发人员自己添加项目依赖项。 所以我的prebuild事件需要通过某种msbuild魔法添加“引用”(=使当前项目依赖于另一个的任何东西)。 这可能吗?

所需的伪代码:

<Task Name="MyOwnPrebuild">
   <AddProjectDependencies ItemGroup="@MyProjectPaths" />
</Task>

在调用此文件之前,通过在其他任务中以递归方式对我的Windows文件夹进行迭代来填充@MyProjectPaths数组。

1 个答案:

答案 0 :(得分:0)

在我的具体案例中,(幸运的是!)是一个愚蠢简单而又美丽的答案:

<ItemGroup>
   <ProjectReference Include="..\**\*.csproj">
     <Private>false</Private>
   </ProjectReference>
</ItemGroup>

这包括所有(?)子文件夹中的所有项目!在这个特殊情况下,我想要的正是我想要的。如果我想限制特定类型的项目,我可以轻松使用更具体的正则表达式。