1

アプリケーションの /packages フォルダーに nuget パッケージが保存されているようです。

/bin (本番環境への昇格に使用するフォルダー) に dll が表示されないため、混乱しました。

/bin への参照のパスを変更し、local = true をコピーするだけですか?

なぜ/packagesに移動したのか混乱しているので確認したいだけです。

4

2 に答える 2

2

いいえ。ビルドの出力ディレクトリとしてbinを使用している場合は、そこから何も参照しないでください。DLLを参照できる別の場所が必要です。プロジェクトがビルドされると、必要なすべてのDLL/EXEが/binフォルダーにコピーされます。クリーンアップを実行すると、それらのアセンブリは削除されます。

/ binを使用すると、ビルドモード(デバッグ/リリース)で問題が発生する可能性もあります。すべてが混同されたときに、適切なモードを参照していることをどのように確認できますか。

その別の場所は/packagesディレクトリのようですが、確実にするにはより多くの情報が必要になります。

これを行う必要がある場合は、プロジェクトルートに「lib」フォルダーを作成し、そこにサードパーティまたはビルド済みのアセンブリを配置して、そこから参照します。Copy local = trueは、プログラムを実行(またはコピー)する/binフォルダーにそれらをコピーします。私が一連のプログラムで作業している場合、「lib」はすべてのプログラムがプルできる共有の場所になります。

于 2013-01-18T17:15:13.087 に答える
0

はい、コピーローカルを「true」に設定するのが正しい方法です。パッケージを ..\Packages フォルダーに抽出したくない場合、一元化された場所 (たとえば、ソース管理または共通の lib フォルダーのルート) に置きたい場合は、nuget.config ファイルにリポジトリ パスを追加できます。詳細はこちら @ http://docs.nuget.org/docs/release-notes/nuget-2.1#Specify_%e2%80%98packages%e2%80%99_Folder_Location

于 2013-02-02T20:47:11.237 に答える