1、备份你的项目
2、从Web API升级到Web API 2,修改global.asax,将
WebApiConfig.Register(GlobalConfiguration.Configuration);
修改为
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
<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
<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>
<securityPolicy>
<!--<trustLevel name="Medium" policyFile="web_mediumtrust.config"/>-->
</securityPolicy>
5、修改View文件夹下的web.config
<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>
-->
<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>
<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、右键项目,重新加载项目