介绍 ASP.NET Core 框架
在这篇文章中, 我将要向你们简短介绍一下 ASP.NET Core 框架. 当今社会, 当提到软件开发, 每个人都是讨论着开源以及跨平台开发. 总所周知, 微软是以它的基于 Windows 产品出名的, 比如 Windows 系统, Office 办公套件等. 现在我们处在新时代软件开发的潮流中, 一个新的革命性的产品, 被微软推出市场, 那就是 -----ASP.NET Core. 作为本文的一部分, 我将详细述说下面几点.
ASP.NET 的历史
什么是 ASP.NET Core
ASP.NET Core 的特点和优点有哪些
ASP.NET Core 中没有哪些东西
ASP.NET 的历史
总所周知, ASP.NET 是一个 web 框架, 并且它被用来开发数据驱动的 Web 应用程序, 已经好多年了. 从那以后, ASP.NET 框架, 就在稳固的更新变革中, 现在最新的版本就是 ASP.NET Core.
ASP.NET Core 不是 ASP.NET Framework 的连续扩展, 相反, 它是从头到尾, 完完全全的一个新框架.
ASP.NET Core 实际上是在当前 ASP.NET Framework 上的重写, 但是它更小, 更具模块化.
一些人可能认为 ASP.NET Core 在大多数方面和 ASP.NET Framework 保持一致, 但是这并不完全正确. ASP.NET Core 实际上是在 ASP.NET Framework 基础上做的一个大的根本性改变.
什么是 ASP.NET Core
ASP.NET Core 是一个全新的跨平台, 高性能, 轻量级, 开源的框架. 它可以用来开发现代的, 联网的, 基于云的 Web 应用程序, IoT 物联网, 以及 WebApIs,ASP.NET Core 开发的这些应用可以运行在 Windows,Linux, 或者 Mac 操作系统上.
ASP.NET Core 框架是基于. NET Framrwork 4.x 的完全重写, ASP.NET Core 改变了. NET Framework 的架构, 现在它变得更加模块化, 可扩展, 开源的, 高性能, 轻量级, 并且可以跨平台.
ASP.NET Core 的优点和特点
现如今, ASP.NET Core 在开发者中, 变得越来越流行, 是因为下面几个原因, 我们来详细看看吧:
开源的: ASP.NET Core 框架是开源的. 框架的源代码在: https://github.com/aspnet , 你可以免费的下载, 甚至如果你还可以修改, 编译成你自己的版本.
跨平台: ASP.NET Core 是重新设计的框架, 它的开发和部署都是跨平台的. 我们来讨论一下 ASP.NET Core 跨平台的特点, 并且把它和早期的. NET Framrwork 做一个比较. 早期的 ASP.NET Framework 应用程序, 仅仅只能运行在 Windows 平台上, 然而 ASP.NET Core 可以开发运行在不同的平台上, 例如: Windows,Mac, 或者 Linux 操作系统上. 我们仅仅只能把 ASP.NET Framework 4.x 的应用程序部署在 IIS 上; 然而我们可以在 IIS,Nginx,Docker,Apache 部署 ASP.NET Core 应用程序, 甚至还可以自托管部署. 为了开发 ASP.NET Core 应用程序, 你的选择有很多, 你可以选择使用 Visual Studio 或者 Visual Studio Code 等. 如果你想, 你可以选择任何第三方的编辑器来开发 ASP.NET Core 应用程序.
对 html 以及 Http 请求的完全控制: 在 ASP.NET Core MVC 框架中, 你将获得 HTML 的完全控制权. 这就意味着, 你可以创建从简单到复杂的, 带有 CSS 样式的 HTML 页面, 并且把他们显示在浏览器上. 同样的, 你将获得 HTTP 请求的完全控制权, 这样就非常简单的来创建一个 Ajax 请求了; 在 ASP.NET Core 中, 你可以很方便的以插件的形式使用客户端框架, 例如 jQuery,Bootstrap,React, 以及 Angular.
统一的 MVC 和 Web API 框架: ASP.NET Core 提供了一个统一的编程模型, 用来开发 Web Apps 和 Web APIs. 这就意味着, 一个 Controller 类, 可以用来处理 MVC 和 Web APIs. 我们在 ASP.NET Core(Web Apps 或者 Web APIs) 中创建的控制器, 都是要继承 Controller 基类, 并且返回 IActionResult 接口. IActionResult 提供了很多的实现, 例如 JsonResult 以及 ViewResult 等, 还有后面要讲到的很多, 都实现了 IActionResult 接口. 在 ASP.NET Core API 应用程序中, 控制器中的方法, 是返回 JsonResult. 与此同时, 在 ASP.NET Core Web 应用程序中, 控制中的 Action 方法返回的是 ViewResult.
可扩展的框架: ASP.NET Core MVC 框架是高度可扩展的. 这意味着, 今天你开发了一个应用程序, 以后也很容易扩展二次开发. 下面的这些关键特点提供了 ASP.NET Core 强大的可扩展性:
1. 视图组件 (View Components)
2.Tag 帮助类 (Tag Helper)
3. 路由 (Routing)
接下来的文章中, 我将会一一详细, 讨论这些细节的, 敬请关注!
6. 依赖注入: 在真实的应用程序中, 最重要的设计模式之一就是: 依赖注入. 并且同样重要的是 ASP.NETCore 框架提供了内置的依赖注入, 我将会在后面的文章中, 带大家一起来学习 ASP.NET Core 中的依赖注入.
7. 测试可维护性: 你可以很方便的测试维护 ASP.NET Core 应用程序. 这是因为 ASP.NET Core 允许你将应用程序分成各个独立的部分, 并且允许你独立的测试各个部分. 测试框架例如: xUnit 以及 MOQ 可以很轻松的集成到 ASP.NET Core 应用程序中, 进行任何模拟测试.
8. 处理请求响应管道: 我们可以使用中间件组件, 来处理 ASP.NET Core 应用程序中的请求响应. 在早期的 ASP.NET Framework 4.x 中, 我们通常使用处理程序和模块来处理请求响应管道. ASP.NET Core 提供了很多内置的中间件组件, 我们可以使用这些中间件组件来处理请求响应管道. 如果你愿意, 也可以创建自己的中间件组件, 来处理请求响应管道. 在后面的文章中, 我将会教大家中间件组件的使用, 以及在 ASP.NET Core 中怎么来创建自定义的中间件组件.
什么是 ASP.NET Core 没有的东西
如果你是从 ASP.NET 4.x 过来学习这个系列的人, 那么你就会发现, 下面这些在 ASP.NET Core 中是没有的:
Global.asax 文件
Web.config 文件
HTTP Handlers 以及 HTTP Modules(HTTP 处理程序和 HTTP 模块)
ASP.NET 页面生命周期模型 (ASP.NET Page Life-Cycle model)
在下篇文章中, 我将带领大家, 使用 Visual Studio 创建第一个 ASP.NET Core 应用程序. 这篇文章中, 我向大家简单介绍了 ASP.NET Core 框架, 希望可以帮到大家.
来源: https://www.cnblogs.com/caofangsheng/p/12631345.html