2014-09-24 81 views
4

我在我的解決方案中有3個項目以及一些第三方或公司dll。每次我重建我的項目或乾淨的解決方案時,很多這個dll被刪除,因此失蹤。重建後重復引用這個dll文件是相當煩人的。有人可以解釋如何避免這種情況嗎?提前致謝。.dll在重建/清除生成解決方案後丟失

+1

你有「引用」他們在你的項目,仍然失蹤?或者你只是將dll文件複製到輸出目錄? – Habib 2014-09-24 14:21:00

+0

同樣在參考文獻的屬性菜單中(在設計器中)他們有「複製本地」(這可能是他們不在文件夾中的原因,如果沒有設置) – Thomas 2014-09-24 14:22:42

+0

@Habib我在根目錄下創建了bin文件夾文件夾,並在那裏複製所有dll,然後通過引用 - 添加引用從此文件夾中引用它們。 – 2014-09-24 14:24:44

回答

8

bin文件夾只是構建的二進制輸出,因此當您清理解決方案時,bin文件夾中的所有程序集都將被刪除。您應該從其他位置引用程序集。一個建議是在您的項目中創建Shared Resources文件夾,將您的程序集複製到該文件夾​​,然後從該文件夾中引用它們。通過這種方式,它們不會從清理/重建時的bin中刪除,並且Visual Studio會根據需要將它們複製到那裏。在項目中的文件夾References

  1. 右鍵單擊並選擇Add Reference...
  2. 使用瀏覽功能來定位要引用的組件(不要擔心手工將它們複製到/從你的bin文件夾)
  3. 參考加入後,在您的參考列表中的參考右鍵單擊並選擇Properties
  4. 確保Copy Local屬性設置爲True

這將確保將程序集複製到每個版本的bin文件夾中。

+0

感謝您的答覆。所以實際上當我清理/重建我的子項目時,這個子項目中的bin文件夾將被清空。如果我重新構建了整個解決方案,那麼將刪除根目錄中的bin文件夾或刪除子項目中的每個bin文件夾? – 2014-09-24 14:38:05

+0

當您清理一個項目時,該項目的bin文件夾將被清空。在解決方案級別沒有'bin'文件夾,因此當您清理解決方案時,它將清空該解決方案中所有項目的'bin'文件夾。我認爲Visual Studio有一些特殊的規則,在執行清理時文件/文件夾會被刪除,因此可能會有後來剩下的文件。但重要的是'bin'文件夾是構建的輸出,你不想從那裏手動複製/引用你的程序集...... – 2014-09-24 14:46:35

相關問題