2011-11-14 106 views
5

我試圖編譯我有解決方案,不能讓過去的應用程序:「你必須添加一個引用Microsoft.Practices.EnterpriseLibrary.Common」,即使程序集是在GAC

'Microsoft.Practices.EnterpriseLibrary.Common.Configuration.IConfigurationSource' 在未引用的程序集中定義。您必須添加一個 引用程序集 'Microsoft.Practices.EnterpriseLibrary.Common, 版本= 3.1.0.0,文化=中性公鑰= b03f5f7f11d50a3a'

所以我增加了組件安裝到GAC:

enter image description here

經過一番研究,我打開Visual Studio中的Fusion Assembly Binding Viewer運行,這似乎創造了很多記錄,但沒有這關係到大會的這一確切版本(4.1.0.0不過是那裏)。

我不能簡單地添加 - >引用作爲VS告訴我,具有相同名稱的引用已經存在。

我應該探索哪些其他途徑?

+0

爲什麼不使用EntLib 5.0? – abatishchev

+0

這不是我的項目,我只需要能夠編譯它 –

+0

如果有一個現有的引用,然後嘗試刪除現有的引用,然後重新添加它。在GAC中進行彙編將不會在編譯時產生任何影響。 – Justin

回答

1

如果您使用的是.net 4.0,您是否嘗試過使用程序集別名。例如,您將不得不在.config文件中輸入一個條目,以顯示引用新程序集名稱的舊程序集名稱。還有其他一些事情要記住..如果.DLL在GAC中,並且bin文件夾中沒有該程序集的副本,則可能會導致問題。

這是本地引用還是遠程機器上的代碼..?如果它是一個遠程機器......爲什麼不把這個特定的程序集添加到GAC中?注意這兩個程序集在你的屏幕截圖中的版本差異。

相關問題