记一次ASP.NET MVC4 升级到MVC5的小问题解决-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

记一次ASP.NET MVC4 升级到MVC5的小问题解决

简介: 原文:记一次ASP.NET MVC4 升级到MVC5的小问题解决 .NET 4.0 MVC4版本,升级到.NET 4.6.1 MVC5: 1.使用nuget更新所有 与mvc相关的类库; 2.更改~/Views/web.
原文:记一次ASP.NET MVC4 升级到MVC5的小问题解决

.NET 4.0 MVC4版本,升级到.NET 4.6.1 MVC5:

1.使用nuget更新所有 与mvc相关的类库;

2.更改~/Views/web.config(如果有Area,Area下面的web.config也要更改),更改razor版本为3.0.0;mvc版本为5.2.3;

 <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>

  <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <pages pageBaseType="System.Web.Mvc.WebViewPage">
      <namespaces>
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Optimization"/>
        <add namespace="System.Web.Routing" />
      </namespaces>
    </pages>
  </system.web.webPages.razor>

这个时候项目已经可以正常用mvc5跑起来了,但是又有一个恼人的问题,cshtml中编写代码时,很多扩展方法和属性都找不到,但运行时没有问题,

因为mvc4中,这些扩展方法放在System.Web.WebPages库中,而到了mvc5 都放在了System.Web.Mvc库中,所以还有一处配置需更改:web项目的web.config

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

修改为

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

重启VS,搞定!

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: