2015-09-28 24 views
0

我正在使用VS 2010.當我清理解決方案時,dll正從bin \ debug文件夾中消失,'COPY Local'自動設置爲False。當我重建解決方案時,該DLL將顯示在該文件夾中,並且「複製本地」屬性仍設置爲False。如何使複製本地始終爲真

如何使dll應該出現在bin \ debug文件夾中。並且「複製本地」屬性設置爲True。

+0

我一次標記了所有引用,將本地複製設置爲true。 VS不會將任何內容設置爲false。那你到底在幹什麼?我想重現那個/你的行爲。 – outofmind

+0

不確定你在說什麼產品,它聽起來不像Visual Studio。如果您將任何DLL放入GAC中,請務必再次將其刪除。 –

+0

That's so so 5 years ago –

回答

0

Here, I found:

繃複製本地假和真將「私人」的元數據 有一招:重新設置基準複製本地爲false,然後爲true,和Visual Studio自動添加私有元爲參考。至少VS 2010的確如此。我最近這樣做是爲了解決我們的TFS Build服務器的一個問題,由於某些奇怪的原因,GAC中安裝了許多Enterprise Library組件,所以我們在從TFS Drop文件夾部署項目時遇到了主要問題。那個錯誤/真實的竅門救了我們。在這裏輸入評論。


And Here, I found:

CopyLocal的項目分配的值是按照下面的順序來確定:

  1. 如果引用另一個項目中,稱爲一個項目到項目 參考,然後值是真的。
  2. 如果在全局程序集緩存中找到該程序集,則該值爲false。
  3. 作爲一種特殊情況,mscorlib.dll引用的值爲false。

  4. 如果在Framework SDK文件夾中找到該程序集,則該值爲false。

  5. 否則,該值爲true。

+0

投票解釋是有幫助的。爲什麼這是錯的?這明確地解決了VS-2010--這個問題上的標籤;它具體描述了這個人如何得到屬性是「真實的」。確定它的值的順序表明該dll不應該位於支持@HansPassant註釋的GAC中。 – radarbob