我有一個使用MVC的幾個不同子網站的Web應用程序。我遇到的問題是兩個子網使用不同的MVC版本。其中一個最近升級爲使用1.0版本,另一個則停留在較早的預覽版本上。ASP.NET MVC版本控制問題
升級的子網站之一至1.0,即使用預覽版本的其他web失敗,出現以下錯誤後:
Could not load type 'System.Web.HttpContextWrapper2' from assembly 'System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
我懷疑,這個問題是由於這樣的事實,無論是System.Web.Abstractions DLL的1.0版本和預覽版本被標記爲版本3.5.0.0,但實際上包含不同的類。因此,當預覽應用程序引用System.Web.Abstractions時,它將獲取已加載的MVC 1.0版本,而不是位於其bin目錄中的預覽版本。
有什麼辦法可以強制運行時加載程序集兩次,就好像它們是兩個不同的版本,即使它們實際上標有相同的版本號?我正在尋找在我的web配置中使用標籤,但不能完全理解我將如何使用它來做到這一點,或者如果它甚至可以實現我在這裏需要做的事情。
你真的需要兩個並排運行的版本,會不會發現以前的版本照顧yoru問題? – 2009-06-15 15:41:58
我確實需要並行運行兩個版本 - 1.0版本中的突然更改導致代碼針對預覽版本編寫而不再有效。我可以使用預覽版本轉換應用程序使用1.0,但我寧願儘可能避免這樣做。 – 2009-06-15 15:57:47