AngularJSASP.NET Core学习某 入帮派简介

同一、入门简介

每当就学之前,要先了解ASP.NET
Core是什么?为什么?很多人数读书新技巧功利心很重复,恨不得马上就学会了。

实在,那样做很不好,马马虎虎,联系过程被而花费非常多之辰错开化解所遇到的“问题”,是概括的问题,对,就是简,就是因看简单吃忽视的物,恰恰这才是绝根本之。

1、学习资料

先是,介绍下哪里好获得深造资料

英文官网,最好之文档,英语得硬

https://docs.microsoft.com/en-us/aspnet/core/

心疼当年英语就是马马虎虎过来的,所以寻找了以下中午翻,以下是中午目录的链接

http://www.cnblogs.com/dotNETCoreSG/p/aspnetcore-index.html

 以下开始正题,主要缘于dotNETCoreSG博客,对有效的内容开展删减记录,少花时看有些免思量看的事物

2、什么是 ASP.NET Core?

ASP.NET Core 是一个初的开源与跨平台的框架,用于构建而 Web
应用、物联网(IoT)应用以及倒后端应用等连续至互联网的基于云的现代应用程序。ASP.NET
Core 应用可运行于 .NET
Core 和完全的 .NET
Framework 之上。
构建它的目的是为那些部署于云端或者内运转(on-premises)的下提供一个优化的开销框架。它由最小支的模块化的组件构成,因此当构建而的缓解方案的以可以保持灵活性。你得于
Windows、Mac 和 Linux 上超过平台的付出与运作而的 ASP.NET Core 应用。
ASP.NET Core 开源在 GitHub 上。

3、为什么构建 ASP.NET Core?

ASP.NET Core
有部分架上的改观,不再基于 System.Web.dll 。当前她根据相同层层颗粒化的,并且可以构建的 NuGet 包。这无异于表征能给您通过就包含需要的
NuGet 包的方法来优化你的应用。通过 ASP.NET Core,你可获得的改良:

  • 一个联合之主意用于构建 web UI 和 web APIs
  • 集成 现代底客户端支出框架 和开流程
  • 一个适用于出口之,基于环境之 布局体系
  • 内置的 仰注入
  • 新式的轻量级的、模块化 HTTP 请求管道
  • 运作于 IIS 或者自宿主(self-host)于你协调的经过的力量
  • 依据支持真正的 side-by-side 应用程序版本化的 .NET
    Core 构建
  • 完全以 NuGet 包的款型发布
  • 新的用于简化现代 web 开发的工具
  • 好于 Windows 、Mac 和 Linux 上构建和运作跨平台的 ASP.NET 应用
  • 开源又强调社区

仲、入门基础

1.应用程序剖析

  一个 ASP.NET Core 应用其实就是是一个以其 Main 方法被开创一个 web
服务器的简单应用程序:

using System;
using Microsoft.AspNetCore.Hosting;

namespace aspnetcoreapp
{
    public class Program
    {
        public static void Main(string[] args)
        {
            var host = new WebHostBuilder()
                .UseKestrel()
                .UseStartup<Startup>()
                .Build();

            host.Run();
        }
    }
}

Main 调用本 builder 模式的 WebHostBuilder ,用于创造一个 web 应用程序宿主。这个
builder 有些用于定义 web 服务器 (如 UseKestrel)和 startup
类型( UseStartup)的方法。在上头的演示中,web 服务器 Kestrel
被启用,但是你吧足以指定其他 web
服务器。我们用会见于生一样节展示更多关于 UseStartup 的内容。WebHostBuilder 提供了有些只是选取方式,其中囊括住宿在
IIS 和 IIS Express
中的 UseIISIntegration 和用于指定根内容目录的 UseContentRootBuild 和 Run 方法构建了用于宿主应用程序的 IWebHost 然后启动它来监听传入的
HTTP 请求。

 WebHostBuilder 的 UseStartup 方法为您的利用指定了 Startup 类。

Startup 类是故来定义请求处理管道和配备使用得之劳务。 Startup 类必须是当着的(public)并且带有如下方法:

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

    public void Configure(IApplicationBuilder app)
    {
    }
}

ConfigureServices 定义你的用所动的劳动(在下面查看 服务(Services) )(例如
ASP.NET MVC Core framework、Entity Framework Core、Identity 等等)

Configure 定义你的请求管道中之 中间件(middleware)

复多内容要参见: Application
Startup

服务(Services)是使用被用于通用调用的组件。服务通过依赖注入获取并使。
ASP.NET Core 内置了一个简单的支配反转(IoC)
容器,它默认支持构造器注入,并且可以好的交替成你自己选用的 IoC
容器。由于它的松耦合特性,依赖注入(DI)
使服务以全路应用中都可以动用。例如,Logging 在您所有应用中都可用。查看 Dependency
Injection 获取更多信息。

中间件(Middleware)

每当 ASP.NET Core
中,你得下 Middleware 构建君的伸手处理管道。
ASP.NET Core 中间件也一个 HttpContext 执行异步逻辑,然后按顺序调用下一个中间件或者直接停请求。一般的话你如果运一个中等件,只待以 Configure 方法里调用 IApplicationBuilder 上一个遥相呼应之 UseXYZ 扩展方法。

ASP.NET Core 带来了增长的内置中件:

  • 静态文件(Static
    files)
  • 路由(Routing)
  • 身份验证(Authentication)

而也可创建而协调的 起定义中间件。

乃吧足以当 ASP.NET Core
中动用另外依据 OWIN 的中游件。查看 OWIN 获取更多信息。

服务器(Servers)

ASP.NET Core 托管模式并无直接监听请求;而是靠让一个
HTTP server 实现来转发呼吁到应用程序。这个于转接的恳求会盖平等组
feature 接口的样式给包裹,然后被应用程序组合及一个 HttpContext饱受去。
ASP.NET Core 包含了一个托管的跨平台 web
服务器,被称为 Kestrel,它数会被周转于一个要是 IIS 或者 nginx 的生
web 服务器之后。

情节根本目录(Content
root)
凡是应用程序所用到的备内容的一干二净路径,例如它的 views 和 web
内容。内容根本目录默认与宿主应用的可执行程序的动到底目录相同;一个代的地方可以通过 WebHostBuilder 来设置。

乃的应用之Web根目录(Web root)是若色受到有着国有的、静态的资源,如
css、js 和 图片文件的目。静态文件中件拿默认只公布 Web 根目录(Web
root)和其子目录中之公文。 Web 根目录(Web
root)默认为 /wwwroot,但是若呢得以经过 WebHostBuilder 来指定另外一个地方。无亮好处在乌,和以前发生哪不同?

配置(Configuration)

ASP.NET Core
使用了一个新的部署型用于拍卖大概的键值对。新的布置型并非因System.Configuration 或者 web.config ;而是于一个平稳的布提供者集合拉取数据。内置的安排提供者支持多种不同的文件格式如(XML,JSON,
INI)和用来支持因环境的布局环境变量。你吧足以兑现您自己于定义之布置提供者。查看 Configuration 获取更多信息。

环境(Environments),要 “Development” 和 “Production”,是 ASP.NET
Core 中的第一层概念同时它可以安装成采取环境变量。查看 Working with
Multiple
Environments 获取更多信息。

使用 ASP.NET Core MVC 构建 web UI 和 web APIs

  • 公可使用 Model-View-Controller(MVC)模式开创好之同时可测试的
    web 应用程序。查看 MVC 和 测试。
  • 而可以构建支撑多格式并且完全支持内容商的 HTTP 服务。
    查看 Formatting
  • Razor 提供了同等种植高效的语言用于创造 Views
  • Tag
    Helpers 启用服务器端的代码参与到 –
    Razor 文件之创建同 HTML 元素渲染
  • 您得下于定义或者放到的 formatters (JSON,
    XML)来构建完全支持内容商的 HTTP 服务
  • Model Binding
    模型绑定 自动的映射
    HTTP 请求中之数码及 action 方法参数
  • Model Validation
    模型验证 自动的推行客户端以及劳务器端验证

客户端支付

ASP.NET Core
在统筹时早已考虑到和各种客户端框架(AngularJS,KnockoutJS 和 Bootstrap)的无缝集成。查看 Client-Side
Development 获取更多信息。

 

 

相关文章