是否可以从MsBuild定制任务中知道哪个解决方案正在构建项目,或者哪些其他项目也参与构建?自定义MsBuild任务:哪些解决方案/其他项目正在参与构建?
编辑:
试图阐明上下文一点。
比方说,我有以下设置:
Company
+- LibA
+- LibA.csproj
+- LibB
+- LibB.csproj
+- App1
+- App1.sln : App1.csproj, LibA.csproj, LibB.csproj
+- App1.csproj
+- App2
+- App2.sln : App2.csproj, LibA.csproj
+- App2.csproj
所以你可以看到两个App1和App2的溶液中使用力霸,包括它。然而LibB只存在于一个解决方案中。
现在我们假设LibA和LibB之间存在某种关系,并且此关系是通过LibA/LibA.csproj中的自定义MsBuild任务来处理的。然而,要做到这一点,自定义任务需要知道LibB是否参与了当前的构建,或者是否存在于当前的解决方案中。请记住,这是两个解决方案中使用的相同的csproj文件。
我不介意自动或通过添加元数据到.sln文件。
有没有办法做到这一点?
能否请您对您的问题展开?也许增加一个样品或元样? – oleksii 2013-05-11 10:53:31
你可以在LibB添加自定义属性并在LibA中使用条件来检查该属性的存在 – Nicodemeus 2013-05-14 01:34:27