编者语 : 今天微软的两大盛事,早上有久违的Microsoft HEC 2015 晚上有DotnetConf 2015。假若你做微软的技术怎么能够错过呢?说说我的连载吧,前两篇分别介绍了ASP.NET 5的环境配置和在轻量级的Sublime Text上完毕开发工作。今天開始聊聊ASP.NET 5的基本结构。话说我把我的工作平台临时迁移到Surface Pro 3上应下节。

说起ASP.NET , 本人从1.0 beta開始到如今5.0过来(暴露了年龄),有两件事是特别的兴奋,第一是从WebForm过渡到MVC,第二件事情就是ASP.NET 5.0。这两次转变微软都是採纳了不少新的理念和实现方式。比如ASP.NET
MVC就从当年最流行的Ruby on Rails 转变而来。

而如今ASP.NET 5.0就參考了不少NodeJS的长处。微软在这方面也是跟得比較时尚的。

以下就開始说说ASP.NET 5的Web的基本结构 (例如以下图)

  

       0.  没错还是MVC - 不懂就去官网入门吧



       1.  新的配置方式



看看上图的项目你发现Web.Config或者其它目录上的以Config为后序的文件不见了(之前总认为读/写这样的XML是一件痛苦的事情)。真心话,做技术当然不是一段婚姻,你须要喜新厌旧。那新的ASP.NET 5的配置文件去哪里了,变得怎么样了?肯定是简单了,更easy以自己喜欢的方式去定制不同的配置文件(XML,JSON。INI都能够)。在ASP.NET 5中主要通过Startup.cs代替Web.config去完毕初始化配置工作。

比如项目中包和包的依赖关系,更能够升级包的版本号,启动页面等。

而这样的配置都是从IConfiguration開始。

假设你希望了解很多其它能够訪问https://github.com/aspnet/Configuration .

2. Project.json 

这个是配置你的项目所要的包。编译设置,资源文件的主要文件。

他通过JSON文件设置。

有几个比較关系的字段

Dependencies :设置你项目中所须要的包,当你使用kpm rebuild时会根据这个去载入你的包,假设你的包的版本号更新也能够通过这里进行设置。

例如以下图这里设置了一个新项目所须要到的基础包(JSON总比XML易读易理解)

Framework : 针对aspnet50和aspnetcore50进行所须要的包进行设置。

Command : 设置执行K(DN)后面的參数,比如设置web / kestrel 的启动服务和port,单元測试,或者entity framework的支持等。

须要了解很多其它请到这里 https://github.com/aspnet/Home/wiki/Project.json-file

 3.  Config.json

配置数据库连接和你相应的ORM引擎,这里默认是Entity Framework 7。我更希望有很多其它的ORM引擎加进来。

4.  前端配置npm/bower/grunt

你的项目须要引入JS库/Bootstrap等,以往须要在项目中一个个下载。为了更节省时间npm+bower就能够帮你找了。而grunt更方便帮你部署项目时整理/压缩你的JS,规范你的JS代码。

这里更像NodeJS,或者说是模仿。

你如今应该基本了解一个ASP.NET 5项目的结构了,明天继续。

还是那句多多交流!

一步一步学习ASP.NET 5 (三)- 认识新的Web结构的更多相关文章

  1. (转) 一步一步学习ASP.NET 5 (三)- 认识新的Web结构

    转发:微软MVP 卢建晖 的文章,希望对大家有帮助.原文:http://blog.csdn.net/kinfey/article/details/44421979 编者语 : 今天微软的两大盛事,早上 ...

  2. 学习ASP.NET MVC(三)——我的第一个ASP.NET MVC 视图

    今天我将对前一篇文章中的示例进行修改,前一篇文章中并没有用到视图,这次将用到视图.对于前一个示例中的HelloWorldController类进行修改,使用视图模板文件生成HTML响应给浏览器. 一. ...

  3. (转) 一步一步学习ASP.NET 5 (四)- ASP.NET MVC 6四大特性

    转发:微软MVP 卢建晖 的文章,希望对大家有帮助.原文:http://blog.csdn.net/kinfey/article/details/44459625 编者语 : 昨晚写好的文章居然csd ...

  4. 学习asp.net比较完整的流程[转]

    如果你已经有较多的面向对象开发经验,跳过以下这两步: 第一步 掌握一门.NET面向对象语言,C#或VB.NET 我强烈反对在没系统学过一门面向对象(OO)语言的前提下去学ASP.NET. ASP.NE ...

  5. 学习ASP.NET MVC(七)——我的第一个ASP.NET MVC 查询页面

    在本篇文章中,我将添加一个新的查询页面(SearchIndex),可以按书籍的种类或名称来进行查询.这个新页面的网址是http://localhost:36878/Book/ SearchIndex. ...

  6. 学习ASP.NET MVC(一)——我的第一个ASP.NET MVC应用程序

    学习ASP.NET MVC系列: 学习ASP.NET MVC(一)——我的第一个ASP.NET MVC应用程序 学习ASP.NET MVC(二)——我的第一个ASP.NET MVC 控制器 学习ASP ...

  7. 学习asp.net比较完整的流程

    如果你已经有较多的面向对象开发经验,跳过以下这两步: 第一步 掌握一门.NET面向对象语言,C#或VB.NET 我强烈反对在没系统学过一门面向对象(OO)语言的前提下去学ASP.NET. ASP.NE ...

  8. 学习asp.net的流程

    如果你已经有较多的面向对象开发经验,跳过以下这两步: 第一步 掌握一门.NET面向对象语言,C#或VB.NET 我强烈反对在没系统学过一门面向对象(OO)语言的前提下去学ASP.NET. ASP.NE ...

  9. [转] - 学习ASP.NET比较完整的流程!

    如果你已经有较多的面向对象开发经验,跳过以下这两步:  第一步 掌握一门.NET面向对象语言,C#或VB.NET 我强烈反对在没系统学过一门面向对象(OO)语言的前提下去学ASP.NET. ASP.N ...

随机推荐

  1. PDF数据防扩散系统方案

    在企业信息化过程中.大量的企业重要图纸和资料都是以电子文件的方式存在.为了避免内部关键数据的外泄,採取了多种方式:设计部门的门禁管制.防火墙.禁止计算机的USB接口等等. 可是泄密问题还是时有发生,原 ...

  2. UVA 11235 Frequent values(RMQ)

    Frequent values TimeLimit:3000Ms , ... , an in non-decreasing order. In addition to that, you are gi ...

  3. 多线程——达到Runnable介面

    部分博客(多线程--继承Thread类)介绍了java多线程的第一种实现方法--继承Thread类.这篇博客介绍另外一种方法--实现Runnable接口,并实现run方法. 还用上篇博客的样例.如今用 ...

  4. VS2015配置Andriod开发环境

    原文:VS2015配置Andriod开发环境 折腾了好久终于配置OK了,分享给大家! 第一步: http://xamarin.com/download下载XamarinInstaller 第二步: 运 ...

  5. ORA-00020的思考

    今天,历史的图书馆例行检查DB,发现alert.log有一"ORA-00020: maximum number of processes (150) exceeded",这是一个常 ...

  6. Android源代码同步脚本(增加设置线程参数)

    #!/bin/sh #Filename: repo_sync.sh count= ret= ] do #输入参数1,用作同步的线程数 #如果什么参数都不输入,默认线程为4 #usage: ./repo ...

  7. VMware vSphere 服务器虚拟化之十七 桌面虚拟化之安装View链接服务器

    VMware vSphere 服务器虚拟化之十七 桌面虚拟化之安装View链接服务器 View链接服务器(View Connection Server)是Vmware Horizon View桌面虚拟 ...

  8. C++程序代写实现HashSet class

    C++程序代写实现HashSet class 专业程序代写(QQ:928900200) Implement a HashSet class for elements of type string.It ...

  9. Sublime Text 3 最性感的编辑历史

    ↑ ↑ ↑ ↑ ↑ 请参阅文件夹 ↑ ↑ ↑ ↑ ↑ 下载 / 装 windows / MAC OS 官网下载.双击安装,这个都会吧- linux linux下安装.一种办法是从官网下载 tar.bz ...

  10. mysqldump 命令的使用

    1.导出结构不导出数据 mysqldump -d databasename -uroot -p > xxx.sql 2.导出数据不导出结构 mysqldump -t databasename - ...