导航

微软继MVC5后,出现ASP.NET VNEXT

Posted on 2014-06-21 11:48  ghostll  阅读(236)  评论(0编辑  收藏  举报

vNext又称MVC 6.0,不再需要依赖System.Web,占用的内存大大减少(从前无论是多么简单的一个请求,System.Web本身就要占用31KB内存)。 

      可以self-host模式运行,网站不再需要依赖IIS而运行,由此从此可以快速向客户演示开发进度,以及更好地支持真正跨平台(Linux、Mac、Unix)。 

     Web Api、Web Pages与MVC完全融为一体,统称MVC 6.0。在过去,输出JSON,既可以使用MVC自带的returnJSON,也可以使用Web Api,这样分而治之的场面给整个社区都带来不良影响(JSON仅是其中一个例子,其它很多功能都是一样),现在,Web Api 完全融入了vNext,重复的轮子在这里终于得到终结。 

     支持Poco形式的Controller,代码更加干净。 

     云优化技术,也就是说在开发阶段,系统本身并不真正加载某个组件,而是在运行时才查询合适版本的组件,由此带来的好处是在Azure云主机、Mono主机和Windows主机上可以依赖最合适当前环境的某个组件Dll。 

内置了依赖注入框架 

使用Roslyn编译器,生成的代码更高效 

与1~5.x的差异

1:Project.json代替了从前的Web.config: 

·项目包的依赖项在dependencies节点中定义。 

·configurations节点保存的是项目设置信息。 

·commands节点保存的是self-host配置参数,例如本地绑定端口号。 

·自定义节点,例如自定义一个Data节点,在它的作用域中再定义一个DefaultConnectionString来记录数据库连接字符串。 

2:Startup.cs代替了Global.asax 
 3:Views文件夹中不再需要专门的Web.config 

当你添加某个引用(例如Entity Framework)的时候,需要网络实时加载,所以如果遇到“找不到某某类库”的错误时,不要担心,过一会就好了。

 

    MVC的基本概念不变,依然是从前的 RouteTable、Controller、View、Action、Razor、Model 

本人著作:ecshop随机文章

我的专栏