【MVC4升级到MVC5】ASP.Net MVC 4项目升级MVC 5的方法
1、备份你的项目
2、从Web API升级到Web API 2,修改global.asax,将
|
1
|
WebApiConfig.Register(GlobalConfiguration.Configuration); |
修改为
|
1
|
GlobalConfiguration.Configure(WebApiConfig.Register); |
3、通过Nuget,更新下面的包
|
包名 |
旧版本 |
新版本 |
|
Microsoft.AspNet.Razor |
2.0.x.x |
3.0.0 |
|
Microsoft.AspNet.WebPages |
2.0.x.x |
3.0.0 |
|
Microsoft.AspNet.WebPages.WebData |
2.0.x.x |
3.0.0 |
|
Microsoft.AspNet.WebPages.OAuth |
2.0.x.x |
3.0.0 |
|
Microsoft.AspNet.Mvc |
4.0.x.x |
5.0.0 |
|
Microsoft.AspNet.Mvc.Facebook |
4.0.x.x |
5.0.0 |
|
Microsoft.AspNet.WebApi.Core |
4.0.x.x |
5.0.0 |
|
Microsoft.AspNet.WebApi.SelfHost |
4.0.x.x |
5.0.0 |
|
Microsoft.AspNet.WebApi.Client |
4.0.x.x |
5.0.0 |
|
Microsoft.AspNet.WebApi.OData |
4.0.x.x |
5.0.0 |
|
Microsoft.AspNet.WebApi |
4.0.x.x |
5.0.0 |
|
Microsoft.AspNet.WebApi.WebHost |
4.0.x.x |
5.0.0 |
|
Microsoft.AspNet.WebApi.Tracing |
4.0.x.x |
5.0.0 |
|
Microsoft.AspNet.WebApi.HelpPage |
4.0.x.x |
5.0.0 |
|
Microsoft.Net.Http |
2.0.x. |
2.2.x. |
|
Microsoft.Data.OData |
5.2.x |
5.6.x |
|
System.Spatial |
5.2.x |
5.6.x |
|
Microsoft.Data.Edm |
5.2.x |
5.6.x |
|
Microsoft.AspNet.Mvc.FixedDisplayModes |
|
Removed |
|
Microsoft.AspNet.WebPages.Administration |
|
Removed |
|
Microsoft-Web-Helpers |
|
Microsoft.AspNet.WebHelpers |
4、更新根目录的web.config
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <!--Two elements removed for Clarity --> <dependentAssembly> <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="1.0.0.0-5.0.0.0" newVersion="5.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly> <!--WebGrease element removed for Clarity --> </assemblyBinding |
|
1
2
3
4
5
6
7
|
<appSettings> <add key="webpages:Version" value="3.0.0.0" /> <add key="webpages:Enabled" value="false" /> <add key="PreserveLoginUrl" value="true" /> <add key="ClientValidationEnabled" value="true" /> <add key="UnobtrusiveJavaScriptEnabled" value="true" /></appSettings> |
|
1
2
3
|
<securityPolicy> <!--<trustLevel name="Medium" policyFile="web_mediumtrust.config"/>--></securityPolicy> |
5、修改View文件夹下的web.config
|
1
2
3
4
5
6
7
8
9
|
<system.web.webPages.razor> <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> <pages pageBaseType="System.Web.Mvc.WebViewPage"> <namespaces> <add namespace="System.Web.Mvc" /> <!--Elements removed for Clarity.--> </namespaces> </pages></system.web.webPages.razor> |
|
1
2
3
4
5
6
7
8
9
10
11
|
--> <pages validateRequest="false" pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"> <controls> <add assembly="System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" /> </controls> </pages></system.web> |
|
1
2
3
4
5
6
7
|
<configuration> <configSections> <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"> <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> </sectionGroup> </configSections> |
6、右键解决方案,选择卸载项目
7、右键项目,编辑 [ProjectName].csproj
8、找到 ProjectTypeGuids 节,删除Guid {E3E379DF-F4C6-4180-9B81-6769533ABE47},保存
9、右键项目,重新加载项目
浙公网安备 33010602011771号