2013-08-01 94 views
2

我下載了新版本的第三方DLL,將它複製到新項目中的「庫」文件夾中,並添加了一個引用。我期望它在參考管理器中顯示5.0.6版本,但它顯示4.5.0。Visual Studio:錯誤的參考版本

我在我的系統上安裝了4.5.0版本,但在解決方案或GAC中沒有任何其他版本。它似乎在運行時使用4.5.0,但將5.0.6複製到/bin

請幫我理解發生了什麼。我在下面提供了一些支持細節。

更新:我包含了每個請求的引用屬性的屏幕截圖。


DLL屬性:

enter image description here

通過瀏覽到文件的位置添加參考:

Adding Reference

這裏是最終的參考:

Resulting project references

屬性:

enter image description here

如果我顯示在運行時程序集的版本,它表明4.5:

enter image description here

但是,當我看着/bin,它具有5.0版。 6。

+2

爲什麼你不使用NuGet來管理你的參考?它肯定會有幫助! – phillip

+0

您沒有在項目中包含該參考的屬性屏幕截圖。包含您正在引用的實際文件的路徑。 – phillip

+0

謝謝菲利普。我會看看NuGet。 – nunzabar

回答

3

你在看什麼(5.0.6.16206)是File Version,而不是Assembly Version。 .NET運行時文件系統使用文件版本,不使用。程序集版本是4.5.0.0,所以你所看到的是正確的和預期的信息。

正如Phillip在評論中提到的那樣,您應該考慮使用NuGet,因爲它使事情變得更容易。

+0

我的錯誤是假設產品版本=組裝版本。我做了一些測試,現在看到它們不是同一個實體。謝謝! – nunzabar

+0

不客氣:) – keyboardP

0

而不是使用Assembly.Load您應該嘗試使用LoadFrom來代替。那麼你將不會依賴它從它的搜索路徑中找到你的Assembly。