2012-02-06 64 views
2

在我的一個網站中,我添加了對IBM.DATA.DB2.dll(位於GAC,版本9.0.0.2)的引用,如以下文本中所示從Web的.config: -添加引用指向與GAC不同的版本

但是當我建立我的項目,它試圖將它指向一個不同版本的DLL,如錯誤mrssage如下圖所示: -

「無法加載文件或程序集」IBM.Data.DB2,Version = 9.7.4.4,Culture = neutral,PublicKeyToken = 7c307b91aa13d208「或其某個依賴項。定位的程序集清單定義與程序集引用不匹配。 (例外從HRESULT:0x80131040)「

我在GAC(C://Windows/Assemblies)中檢查,我看不到任何參考9.7.4.4版本,我將不勝感激任何幫助,我可以得到這個

感謝, ABHI。

回答

3

我能夠使用fuslogvw.exe解決我的問題。從日誌中我發現在machine.config文件的路徑「C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config」中有一個版本重定向,它將參考9.0.0.2重定向到9.7。 4.4。

<dependentAssembly> 
<assemblyIdentity name="IBM.Data.DB2" publicKeyToken="7c307b91aa13d208" culture="" /> 
<bindingRedirect oldVersion="8.0.0.0-9.0.0.4" newVersion="9.7.7.4" /> 
</dependentAssembly> 

將9.7.4.4更改爲9.0.0.2解決了問題。

謝謝, Abhi。

0

你有「特定版本」屬性設置爲true?是否需要是版本?如果你可以鏈接到任何版本然後設置屬性爲false,這將允許您的項目鏈接到任何版本的程序集。

它也可以成爲你在這個特定版本中的其他依賴關係之一的依賴。

如果您確實需要較舊的版本,並且較新的版本正在被其他引用所吸引,那麼您將遇到不同的問題。這隻能通過升級應用程序或查找引用舊版本的程序集版本來解決。

仔細檢查是否有最新版本(如果您的版本是9.0.0.2並且Visual Studio正在尋找版本9.7.4.4,它看起來不是這樣)。下載並安裝該版本。

相關問題