Dot-Net

一些(官方或非官方)將 Mvc3 升級到 Mvc5 的指南?

  • March 25, 2014

有一個(非 Microsoft)NuGet允許將 Mvc3 升級到 Mvc4。

有一篇(Microsoft)文章解釋瞭如何手動從 Mvc3 遷移到 Mvc4。我們可以從那篇文章中讀到,例如:

找到 ProjectTypeGuids 元素並將 {E53F8FEA-EAE0-44A6-8774-FFD645390401} 替換為 {E3E379DF-F4C6-4180-9B81-6769533ABE47}。

現在,是否有類似的東西允許從 MVC3 遷移到MVC5

是否足以先從 3 遷移到 4,然後重新定位框架版本(到 4.5)並安裝官方 MVC nu-get

作為有人建議的答案,然後由於未知原因被刪除,我將為上述問題添加這篇文章參考:

如何將 ASP.NET MVC 4 和 Web API 項目升級到 ASP.NET MVC 5 和 Web API 2

由於安裝了 VS2015,我不得不將我的應用程序從 MVC3 轉換到 MVC5 上。我已經成功地做到了:)。我希望以下描述能幫助遇到類似問題的人:

**1)**將 .Net 框架更改為 4.5

Project -> Properties -> Application -> Target Framework -> 4.5

**2)**從包管理器控制台安裝:

Install-Package Microsoft.AspNet.Mvc -Version 5.2.3

3) web.config中有一行是:

<add key="webpages:Version" value="1.0.0.0" />

將其更改為 bin 文件夾中的 system.web.webpages.dll 版本:

<add key="webpages:Version" value="3.0.0.0" />

**4)**如果您的項目使用 EntityFramework,您必須將其升級到 5.x 或更高版本並將 dll 引用設置為

....\net45\EntityFramework.dll
....\net45\EntityFramework.SqlServer.dll

**5)**解決以下問題:

Error   CS0104  'Compare' is an ambiguous reference between 'System.ComponentModel.DataAnnotations.CompareAttribute' and 'System.Web.Mvc.CompareAttribute'

你可以加:

using CompareAttribute = System.Web.Mvc.CompareAttribute;

6)您可能需要更改web.configViews\web.config中的其他定義,並查找和替換文本,如下所示:

System.Web.Mvc, System.Web.Mvc.*, System.Web.Razor,System.Web.WebPages.Razor3.0.0.0變為5.0.0.0

System.Web.WebPages,System.Web.WebPages.*1.0.0.0變為3.0.0.0

就這樣 :)

引用自:https://stackoverflow.com/questions/22642329