1. 什么是ASP.NET 1.0
    1. 开源 - GitHub
    2. 跨平台 - 支持Windows, Mac, Linux
    3. 从底层进行了优化 - 使用最小开销的模块化组件 - 给与了开发人员很大的灵活性
  1. 为什么要使用ASP.NET Core
    1. 轻量级模块化HTTP请求管道 - 过去的框架过于臃肿, ASP.NET 5 更加小巧(模块化), 如: 不再基于System.Web.dll进行开发, 而是分解为一系列的NuGet包, 您只需安装所需几个即可(pay-for-what-you-use);
    2. 框架大统一 - WebUI, Web APIs 甚至客户端网络框架都是统一的
    3. 基于云开发, 基于环境配置, 提供内建的依赖注入支持
      1. 基于云开发 - 所有包通过NuGet管理
      2. 基于环境配置 - 根据不同的平台使用不同的配置, 也可以配置使用IIS托管, 自托管, OWIN托管等
      3. 内建的依赖注入 - 内部整合了Autofac和Ninject
    4. 支持跨平台开发工具
      1. Visual Studio(非跨平台) : 提供了一个全新的灵活的项目系统
      2. 其他开发工具(跨平台支持) : 提供了完整的命令行接口, 使你可以选择喜欢的工具进行开发
    5. 支持跨平台运行
    6. 完全开源, 社区支持
    7. 支持side-by-side应用程序版本控制 - 只需要升级需要的部分即可
  2. 应用程序剖析
    1. ASP.NET Core 1.0 运行在 .NET Execution Environment(DNX) 之上
    2. Startup.cs

      public class Startup
      {
           public void ConfigureServices(IServiceCollection services) {}

        public void Configure(IApplicationBuilder app) {}

        public static void Main(string[] args) => WebApplication.Run<Startup>(args);

      }

      1. ConfigureServices : 定义使用的服务
      2. Configure : 定义在请求管道中使用的中间件
  1. 什么是服务

    服务是在整个应用程序中都要用到的公共组件, 通过依赖注入获得, ASP.NET Core 1.0中有三种类型的服务:

    1. Singleton : 整个应用程序任何时候都是使用这一个
    2. Scoped : 如果在指定作用域中没有, 则创建一个, 默认的容器域是每次请求都创建一个
    3. Transient : 每次使用服务都会创建一个
  1. 什么是中间件

  中间件用于组成你的应用程序请求管道, ASP.NET Core 1.0 在HttpContext之上采用异步逻辑, 它可以选择执行序列中的下一个中间件或者直接终止请求:

    1. 静态文件处理
    2. 路由
    3. 诊断
    4. 身份验证
  1. 什么是服务器Servers
    1. 用于监听Request请求
      1. IIS
      2. Self-hosting : 自己的进程中, 在Windows中, 可以使用WebListener服务
      3. Kestrel : 跨平台的WebServer
  1. 什么是WebRoot
    1. Http请求进行处理的根目录(比如处理静态文件)
  2. 如何配置应用程序 - Configuration
    1. 以前: 使用System.Configuration和Web.config
    2. 现在: 新的配置模块处理简单的键值对设置, 支持多种格式(XML, JSON, INI)
    1. 其他客户端框架的整合 - AngularJS, KnockoutJS, Bootstrap…

.Net Core 学习 (1) - ASP.NET Core 总览的更多相关文章

  1. Orchard Core Framework:ASP.NET Core 模块化,多租户框架

    Orchard Core Framework:ASP.NET Core 模块化,多租户框架 上一篇编写Orchard Core一分钟搭建ASP.NET Core CMS ,介绍ASP.NET Core ...

  2. ASP.NET Core 新增用户 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 新增用户 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 新增用户 上一章节我们实现了一个注册表单,但也留了一些东西还没完成, ...

  3. ASP.NET Core Identity 配置 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core Identity 配置 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core Identity 配置 上一章节我们简单介绍了下 Id ...

  4. ASP.NET Core Identity 框架 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core Identity 框架 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core Identity 框架 前面我们使用了 N 多个章节, ...

  5. ASP.NET Core 数据库上下文 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 数据库上下文 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 数据库上下文 上一章节中我们了解了 Entity Framewo ...

  6. ASP.NET Core 动作结果 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 动作结果 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 动作结果 前面的章节中,我们一直使用简单的 C# 类作为控制器. 虽 ...

  7. ASP.NET Core 属性路由 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 属性路由 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 属性路由 经过前面章节的学习,想必你已经对 ASP.NET Core ...

  8. ASP.NET Core 静态文件 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 静态文件 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 静态文件 前几章节中,我们学习了 ASP.NET Core 的中间件 ...

  9. 使用EF Core+CodeFirst建立ASP.NET Core MVC项目

    本篇随笔介绍如何使用.NET Core+EF Core创建Web应用程序 首先借用官网的话简单介绍一下ASP.NET Core ASP.NET Core 是一个跨平台的高性能开源框架,用于生成基于云且 ...

随机推荐

  1. C++中的虚函数解析[The explanation for virtual function of CPlusPlus]

    1.什么是虚函数?                                                                                            ...

  2. 使用Mono Cecil 动态获取运行时数据 (Atribute形式 进行注入 用于写Log) [此文报考 xxx is declared in another module and needs to be imported的解决方法]-摘自网络

    目录 一:普通写法 二:注入定义 三:Weave函数 四:参数构造 五:业务编写 六:注入调用 7.  怎么调用别的程序集的方法示例 8. [is declared in another module ...

  3. android-serialport-api and libusb for android

    libusb for android: Even if you get it compiled, Android is probably not going to let you access the ...

  4. RPi Debian Auto Login

    This guide will show you how to login to a Debian image and start LXDE by simply powering the Pi on. ...

  5. centos修改时区,设置时间

    在我们使用CentOS系统的时候,也许时区经常会出现问题,有时候改完之后还是会出错,下面我们就来学习一种方法来改变这个状况.如果没有安装,而你使用的是 CentOS系统 那使用命令 yum insta ...

  6. nyoj 79 拦截导弹

    拦截导弹 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 某国为了防御敌国的导弹袭击,发展中一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到 ...

  7. opencv 通过摄像头捕捉头部

    code: #include <opencv\cv.h> #include <opencv\highgui.h> #include <opencv\cxcore.h> ...

  8. 【Away3D代码解读】(三):渲染核心流程(渲染)

    还是老样子,我们还是需要先简略的看一下View3D中render方法的渲染代码,已添加注释: //如果使用了 Filter3D 的话会判断是否需要渲染深度图, 如果需要的话会在实际渲染之前先渲染深度图 ...

  9. Java的位运算符实例——与(&)、非(~)、或(|)、异或(^)

    一.Java的位运算符实例——与(&).非(~).或(|).异或(^) 1.与(&) 0 & 2 = 0 0 0 0 0 1 0 0 1 0 2.非(~) ~0 = 7 0 0 ...

  10. 局部更新listview的问题(只更新某个item)

    转:http://blog.csdn.net/wu_shu_jun/article/details/7794576 public void updateView(int itemIndex) { // ...