编者语 : 今天微软的两大盛事,早上有久违的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. DataInputStream类readLong()引起的思考

    今天无意中看了下jdk中的DataInputStream类,然后看到readLong()方法,如下: private byte readBuffer[] = new byte[8]; public f ...

  2. js获取设备信息

    var su = navigator.userAgent.toLowerCase(), mb = ['ipad', 'iphone os', 'midp', 'rv:1.2.3.4', 'ucweb' ...

  3. ECshop 表结构

    -- 表的结构 `ecs_account_log`CREATE TABLE IF NOT EXISTS `ecs_account_log` (`log_id` mediumint(8) unsigne ...

  4. Linux应用环境实战05:在Ubuntu 14.10中借用Windows的字体 (转)

    阅读目录 设置系统字体 安装微软的英文字体 查看系统的配置文件 借用Windows的字体 编写配置文件 在前一篇随笔中,我详细讨论了字体的分类及用途,也以Fedora 20为例,展示了字体配置的思路和 ...

  5. Reset and clock control (RCC) STM32L

    Reset: 1.系统复位:A system reset sets all registers to their reset values except for the RTC, RTC backup ...

  6. Visual Studio跨平台开发实战(2) - Xamarin.iOS基本控制项介绍

    原文 Visual Studio跨平台开发实战(2) - Xamarin.iOS基本控制项介绍 前言 在上一篇文章中, 我们介绍了Xamarin 以及简单的HelloWorld范例, 这次我们针对iO ...

  7. Red Gate系列之八 SQL Connect 1.1.1.19 Edition 数据库连接及操作工具 完全破解+使用教程

    原文:Red Gate系列之八 SQL Connect 1.1.1.19 Edition 数据库连接及操作工具 完全破解+使用教程 Red Gate系列之八 SQL Connect 1.1.1.19 ...

  8. Ceph更多Mon 更多mds

    1.当前状态 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdWpfbW9zcXVpdG8=/font/5a6L5L2T/fontsize/400/fill ...

  9. 源码安装apache及配置转发

    一.    安装Apache a)    解压:tar -xvf httpd-*; b)    ./configure --prefix=/usr/oracle/apache CC="gcc ...

  10. C++学习笔记33 转换操作符

    有时候,我们要转换为类类型和类类型,同时,这两个类继承关系不存在,这时候我们就需要一些所谓的转换操作符运营商. 一个简单的例子.类别A转换为int种类 #include <iostream> ...