【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、右鍵項目,重新加載項目


免責聲明!

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



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