开发 ASP.NET vNext 初步总结(使用Visual Studio 2015 Preview )


新特性:

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自带的return JSON,也可以使用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

下面的教程中涉及到加载包,以及各个包的版本号,例如"0.1-alpha-build-0403",也许你看到这篇文章的时候,版本号已经不适用了,最简单的解决办法是创建一个现成的ASP.NET vNext Web Application(注意不是空项目),它会加载当前可用的常用包,对照里面的对应包的版本号。

如果需要输出静态文件,例如 .html、.jpg,需要加载专门的处理流程,它们保存在Microsoft.AspNet.StaticFiles中。

原文链接:http://www.cnblogs.com/kvspas/p/asp-net-mvc6-vnext.html

优质内容筛选与推荐>>
1、基础小问题
2、nginx dockerfile安装第三方模块
3、Nginx
4、python中多进程
5、Ubuntu系统中安装Redis服务器端


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号