3

私は多くのプロジェクトを持つアプリケーションを持っています。全体的にクリーンなコンパイルを行う前に、dll を削除して各プロジェクトを再コンパイルする必要がある場合があります。また、ビルドを行うときは、bin フォルダーに保存されている各プロジェクトの dll をチェックアウトし、各プロジェクトをコンパイルし、dll をチェックインしてから、ビルドを実行してクリーン コンパイルを取得することを忘れないでください。これは面倒です。変更を加えた場合、およびリリースを行うときに、一度再構築したいだけです。では、どうすればこれを整理できますか?

4

3 に答える 3

1

全体的にクリーンなコンパイルを行う前に、dllを削除して各プロジェクトを再コンパイルする必要がある場合があります。

ソリューションを右クリック>[ソリューションのクリーン]。そして、再構築します。これにより、奇妙なビルドエラーが解消されることがよくあります。

また、ビルドを行うときは、binフォルダーに格納されている各プロジェクトのdllをチェックアウトし、各プロジェクトをコンパイルし、dllをチェックインしてから、ビルドを実行してクリーンなコンパイルを取得することを忘れないでください。

これはおそらく本当の問題です。外部dllを直接binに追加しないでください。むしろ、サードパーティのdllをソリューションのルートにあるフォルダーに追加するか、実際にはアクセスできる他の場所に追加しますが、ルートは適切な場所だと思います。

 - Solution Folder
   - ExtLib (place all your 3rd party assemblies here; use sub-folders if needed)
   - Project A
   - Project B
   - MySolution.sln

次に、ExtLibから必要に応じて各プロジェクトへの参照を追加します。[参照の追加]> [参照]:必要に応じてdllを追加します。

dllを追加したら、それらが「ローカルコピー」としてマークされていることを確認します。参照>右クリックアセンブリ:ローカルコピー=True。

参照する必要のあるアセンブリが関連プロジェクトにある場合は、プロジェクト参照を追加するだけです。VSが自動的に処理するため、ローカルにコピーする必要はありません。

上記を使用すると、サードパーティのアセンブリをExtLibフォルダーに保持し、必要に応じてソース管理に追加できます。次に、誰かがソース管理からプロジェクトをプルダウンするたびに、ExtLibフォルダーと更新されたアセンブリを取得します。ビルドするたびに、アセンブリはExtLibから参照され、binにコピーされます。

他の人が述べているように、binフォルダをソース管理に追加しないでください:YMMV。

于 2013-02-13T18:27:20.507 に答える