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 の両方が LibA を使用し、それをソリューションに含めます。ただし、LibB は 1 つのソリューションにしか存在しません。
ここで、LibA と LibB の間に特定の関係があり、この関係が LibA/LibA.csproj 内のカスタム MsBuild タスクで処理されると仮定しましょう。ただし、これを行うには、カスタム タスクは LibB が現在のビルドに参加しているかどうか、または現在のソリューションに存在するかどうかを知る必要があります。どちらのソリューションでも同じ csproj ファイルが使用されていることに注意してください。
自動的に行ったり、メタデータを .sln ファイルに追加したりしてもかまいません。
これを達成する方法はありますか?