2010-08-31 80 views
0

我們有一個DotNetNuke應用程序,我們爲其構建了許多模塊,最近似乎一個特定問題不斷出現。Asp.net網站DLL版本號

  1. 我們構建的模塊使用Telerik的第三方DLL。
  2. 一些較舊的模塊使用以.net 2.0爲目標的DLL,而另一些則使用以該目標爲目標的DLL .net 3.5
  3. 我們現在與舊模塊發生衝突,因爲我們將3.5 DLL加載到網站,這顯然是因爲以前的模塊是針對以前的DLL構建的。

我們不能做的是回到所有以前的模塊,並更新這些項目,並重建它們,每次我們有輕微的DLL差異時,因爲最終這兩個版本的DLL做的確切一樣。

是否可以從項目中的引用中刪除版本信息,以便它可以自動假定使用它正在使用的項目中可用的任何版本?

問候, 雅克

+0

使用綁定重定向有幫助嗎?你沒有說明「衝突」的性質。 http://www.telerik.com/help/aspnet-ajax/installwebconfigbindingredirect.html – bzlm 2010-08-31 06:58:30

+0

似乎GAC是另外一種選擇。這樣,引用不同版本DLL的不同模塊將尋找GAC來查找正確的DLL – Jacques 2010-08-31 13:53:45

回答

0

它不可能從基準刪除版本信息。相反,你可以在web.config中使用BindingRedirect。基本上,因爲它的名字建議是一個參考重定向器,當你的2.0模塊搜索一些舊版本的telerik dll版本時,你可以將它重定向到更新的版本。

這將工作僅在除DLL版本號一切都不同了

1

這可以通過使用Assembly Binding Redirection來實現。基本上,您在Web.config中創建了一個配置部分,基本上這樣說:「請求這些版本的程序集時,請使用此特定版本」。