2013-09-24 35 views
4

目前我試圖通過金塊使用名爲the Jquery-File-Upload by BlueImp文件上傳在我的MVC應用程序4版本1.1.0.0。此文件上傳取決於System.Web.Optimization命名空間的工作。如何引用System.Web.Optimization裝配

我的應用程序不斷拋出此錯誤:

Error 9 Assembly 'Backload, Version=1.9.3.0, Culture=neutral, PublicKeyToken=02eaf42ab375d363' uses 'System.Web.Optimization, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' which has a higher version than referenced assembly 'System.Web.Optimization, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'

我試着調整的web.config從而

<dependentAssembly> 
    <assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
    <bindingRedirect oldVersion="0.0.0.0-1.1.0.0" newVersion="1.1.0.0" /> 
</dependentAssembly> 

,我還是繼續得到同樣的消息。

我用Google搜索,發現鏈接要求安裝Microsoft.AspNet.Web.Optimization通過金塊,我做到了,但沒有問題就解決了。

請如何添加System.Web.Optimization.dll的版本1.1.0.0。

回答

3

這是我如何解決這個問題。首先,我在他的回答下跟蹤了@helgans評論,並且仍然不斷獲得參考文件夾中對system.web.optimization 1.0.0版的引用。我也從我的網站的bin文件夾中刪除了dll,並從另一個項目中引用了版本1.1.0,但同樣的問題仍然存在。

在解決這個問題,我發現舊版本正在從庫文件夾複製我的應用程序(好吧,我不知道如何)。這使得被引用的版本保持1.0.0版本,即使我從另一個項目引用版本1.1.0或再次重新安裝NuGet包。

爲了解決這個問題,我做了以下內容:

  1. 我從庫文件夾中刪除該DLL。
  2. 刪除舊版本的參考(感謝@helgans)
  3. 刪除bin文件夾
  4. 反安裝包中的DLL:Uninstall-Package Microsoft.AspNet.Web.Optimization -Force
  5. 重新安裝包

的的NuGet現在增加了對版本1.1.0的引用

+0

我刪除了我的整個bin文件夾,然後執行了上面的步驟4和5。謝謝你的提示。 – bkwdesign

6

這是因爲後送內部參考Microsoft.AspNet.Web.Optimization 1.1.0版本。在新的MVC項目中,您通常會引用較舊的1.0.0版本。你只需要更新到新的一個:在您的項目

右鍵單擊引用,選擇管理的NuGet包,並在左側窗格中出現的對話框中選擇更新。然後,在中間窗格中,查找 「微軟的ASP.NET Web優化框架」 1.1.0版本

的NuGet: http://www.nuget.org/packages/Microsoft.AspNet.Web.Optimization/

形容這裏: http://docs.nuget.org/docs/start-here/managing-nuget-packages-using-the-dialog

+0

我仍然收到相同的消息。做完你的建議後。雖然安裝了新版本,但'System.Web.Optimization dll'仍舊是舊版本(版本1.0.0.0)。看起來,如果nuget包不更新該DLL。我仍然迷失。請任何建議 –

+0

刪除對舊的DLL的引用(1.0。0),刪除packages.config(1.1.0)中的條目,然後再次安裝NuGet包。 – helgans