4

ソリューションのすべての NuGet パッケージをダウンロードするために作成した小さなプログラムがあります。ビルドするたびにこのプログラムを実行するビルド前イベントをセットアップしたいと思います。

ただし、最初のプロジェクトのビルドが開始される前に実行する必要があります。現在ビルド中のものを最初に見て、それをそのプロジェクトのビルド前イベントに置くこともできますが、それはかなり脆弱です。新しいプロジェクトを追加したり、プロジェクト間の参照を更新したりするたびに、「最初の」ビルド プロジェクトがまだ最初のものであることを再確認する必要があります。

したがって、私が本当に必要としているのは、建物が実際に始まる前にこれを行う方法です。Visual Studio マクロについて聞いたことがあります。しかし、それらはチェックインされるものではないので、私はそれらを使用しないことを好みます (しかし、それが私の唯一の選択肢である場合は、それらを使用します)。

4

2 に答える 2

1

これを試すことができます: http://sedodream.com/2010/10/22/MSBuildExtendingTheSolutionBuild.aspx

残念ながら、MSBuild を介してコマンド ラインから呼び出された場合にのみ機能します。動作が異なり、これらのイベントが IDE 経由で利用できないという設計上の欠陥のようです。

ベースの MSBuild タスクを変更して、特定のフラグ/ファイルの存在/ソリューション名に基づくアクションを含めることもできますが、これはあらゆる種類の悪です。

それ以外の場合は、各プロジェクトのビルド前にかなり行き詰まっています。

于 2011-08-14T22:32:17.177 に答える
0

nuget パッケージを使用するすべてのプロジェクトの prebuild イベントから nuget install を呼び出します。まだダウンロードされていないパッケージのみをダウンロードするのは賢明です。

于 2011-08-11T17:34:27.380 に答える