ASP.NET Core与RESTful API 开发实战
上QQ阅读APP看书,第一时间看更新

2.3.1 ASP.NET Core主要特性

ASP.NET Core的主要特性包括以下方面。

(1)跨平台与“自我宿主”

借助于.NET Core与Kestrel,ASP.NET Core能够在不同的操作系统(如Windows、macOS和Linux)上生成并运行。Kestrel是ASP.NET Core中内置的跨平台服务器,具有高性能、速度快等特点。ASP.NET Core应用程序的一个重要优点是它本质上是一个控制台程序,因此能够实现“自我宿主”。

(2)统一Web UI与Web API开发

在ASP.NET中,Web UI和Web API是两个分开的不同的子框架,前者用于创建基于HTML页面的Web应用程序,后者则用于创建Web API应用程序,如RESTful API。ASP.NET Core将这两者合并,简化了Web应用与Web API的开发模式。

(3)内置依赖项注入

ASP.NET Core提供了依赖注入容器,且在框架内部大量地使用了依赖注入,有助于创建低耦合的应用程序。

(4)轻型的高性能模块化HTTP请求管道

在ASP.NET Core中,多个中间件构成了HTTP请求管道,用于处理请求与响应。每个中间件都能够对请求进行一些处理,并继续传递到下一个中间件或直接中断请求而返回响应。这种管道机制极大地提高了HTTP请求处理的灵活性。

(5)基于环境配置及云就绪配置

ASP.NET Core支持运行环境的配置,针对不同的环境可以使用不同的配置,从而表现出不同的行为。这些环境包括了开发(Development)、预演(Staging)及生产(Production)。ASP.NET Core中提供了全新的配置模型,支持从多种配置源获取配置,如配置文件、环境变量和命令行参数等。

(6)支持容器

容器目前已经是非常流行的技术,如Docker和Kubernetes等。ASP.NET Core支持这些主流的技术,将ASP.NET Core应用程序部署到容器中非常容易。

ASP.NET Core目前最新的版本为2.2,它仍然处于一个不断迭代的过程中,每一次版本的升级都会增加一些新特性,接下来将介绍ASP.NET Core 2.1和2.2中新增加的特性,以及在将来要发布的3.0版本中的变化。