2017-07-26 10 views
0

私は数多くのWebアプリケーションと多数のクラスライブラリをソリューションに用意しています。私がWebアプリケーションをビルドするとき、別のWebアプリケーションプロジェクトである "A"をこのコンパイルの影響を受ける "B"としましょう。 "A"と "B"は直接参照されませんが、同じクラスライブラリを使用します。 "A"をビルドまたは再構築すると、このビルドで作成されたアセンブリも "B"のbinフォルダに移動します。だから、私が "A"をビルドするたびに、私は "B"の立ち上げを待っています。私が知る限り、これらのbinフォルダ間にはハードリンク/シンボリックリンクはありません。プロジェクトをビルドすると、Visual Studioソリューション内の別のプロジェクトのbinフォルダが変更されます

また、クラスライブラリの共通出力パスを使用していますが、Webアプリケーションでは使用しません。

これはバグですか?デフォルトの動作ですか?どのように私はこの動作を防ぐことができますか?

答えて

0

これはバグですか?デフォルトの動作ですか?どのように私はこの動作を防ぐことができますか?

これはデフォルト動作です。以下は、WebプロジェクトのBinフォルダに追加され、Visual StudioのWebプロジェクトへのプロジェクト参照を追加します。

  • 追加したプロジェクトから作成されたアセンブリのコピーを。
  • 依存アセンブリ、XMLドキュメントファイル、ライセンスファイル、リソースファイルなどのコピー。

ライブラリにプロジェクトを追加すると、追加したプロジェクトのアセンブリが自動的にWebプロジェクトのBinフォルダに追加されます。

この動作を防止したい場合は、クラスライブラリをNuGetパッケージとしてパックし、そのパッケージをWebプロジェクトAとBに追加できます.NyGet作成パッケージの詳細については、this documentを参照してください。

関連する問題