MVC4升級到MVC5未能加載文件或程序集System.Web.WebPages.Razor, Version=3.0.0.0


首先,我並沒有升級他,頭一天還是好好的,用的都是2.0.0.0版本的,今天來打開就出現了這個錯誤:

未能加載文件或程序集“System.Web.WebPages.Razor, Version=3.0.0.0,.......

然后在網上找了一篇文章:http://www.cnblogs.com/kcjm/p/6430101.html

說是MVC4升級到MVC5的問題,導致相關的dll引用版本沒有自動更新。

 

1.查了一下我引用的dll,仍然是2.0.0.0版本的;

2.查看配置文件的Appsetting中的配置:<add key="webpages:Version" value="2.0.0.0" /> 也是2.0版本;

3.然后我又查了一下項目文件 SystemManage.csproj,用記事本打開,

<Reference Include="Microsoft.Web.Helpers, Version=3.0.0.0......

<Reference Include="System.Web.Razor, Version=3.0.0.0.......

<Reference Include="System.Web.WebPages, Version=3.0.0.0......

<Reference Include="System.Web.WebPages.Deployment, Version=3.0.0.0......

<Reference Include="System.Web.WebPages.Razor, Version=3.0.0.0......

這些引用都變成了3.0.0.0的了,我不知道為什么,有知道的可以寫在評論里。

 

然后我就按照網上的方法開始修改,在 程序包管理器控制台 和  Nuget包管理器 中安裝與更新

1:運行 Install-Package -Id Microsoft.AspNet.WebHelpers

2:修改 Web.config中appSettings,全部修改為3.0(這一步可改可不改)

3:運行 Install-Package Microsoft.AspNet.WebPages.Data

然而沒什么用,又出現了另一個錯誤:

安全透明方法“System.Web.Mvc.PreApplicationStartCode.Start()”嘗試訪問安全關鍵方法“System.Web.WebPages.Razor.PreApplicationStartCode.Start()”失敗。

我繼續查,過了好久,還是沒解決問題,難道就不能升級成MVC5?我用的.NetFrameWork是4.6.1的,不知道是不是這個問題。

由於項目要趕着繼續做,只能先撤回成2.0.0.0的,

方法:項目文件 SystemManage.csproj,用記事本打開,把里面那幾個3.0.0.0的引用都改成2.0.0.0的,然后再打開項目就好了,不知道還會不會自動變成3.0.0.0。

猜測:由於項目文件中的版本號升級了,對應的dll並沒有升級,需要將所有對應的dll都升級才行:

Microsoft.AspNet.WebHelpers

Microsoft.AspNet.WebPages

Microsoft.AspNet.WebPages.Data

Microsoft.AspNet.MVC

Microsoft.AspNet.Razor

Microsoft.AspNet.WebApi

Microsoft.AspNet.WebApi.Core

Microsoft.AspNet.WebApi.WebHost


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM