选择 ASP.NET Core 而不是 ASP.NET 的好处是什么?
ASP.NET Core 是一个高性能、跨平台且开源的框架。它允许您构建现代化、支持云且连接互联网的应用程序。
使用 ASP.NET Core,您可以
- 构建 Web 应用程序和服务、物联网 (IoT) 应用程序以及移动应用程序的后端。
- 在您喜欢的操作系统(如 Windows、macOS 或 Linux)上工作,并选择您喜欢的工具和 IDE。
- 开发并部署到云端或本地。
- 利用容器和 Docker 来简化应用程序的部署和分发。
- 在现代、快速、轻量级的 .NET Core 框架上运行。
ASP.NET Core 框架相对于 ASP.NET 框架的一些重要优势包括
**高性能**: ASP.NET Core 框架从头开始设计,将性能放在首位。ASP.NET 团队专注于使默认 Web 服务器 Kestrel 尽可能快。TechEmpower 一直在对各种框架进行基准测试,它将使用 Kestrel 的 ASP.NET Core 列为 400 多个框架中最快的。
**跨平台**: ASP.NET Core 运行在跨平台的 .NET 5.0 平台上。它不像传统的 ASP.NET 框架那样与 Windows 操作系统绑定。您可以在 Linux 或 Mac 上开发和运行可用于生产环境的 ASP.NET Core 应用程序。如果您决定使用 Linux,则无需支付 Windows 许可证费用,从而节省大量成本。
**开源**: ASP.NET Core 是开源的,并且由来自世界各地的数千名开发人员(以及微软)在 GitHub 上积极开发。所有源代码都托管在 GitHub 上,供任何人查看、更改和回馈。
除了这些重要优势之外,微软在其文档页面上还列出了以下优势。
ASP.NET Core 提供以下优势
构建 Web UI 和 Web API 的统一方案。
专为可测试性而设计。
Razor Pages 使页面为中心的场景的编码更轻松、更高效。
Blazor 允许您在浏览器中与 JavaScript 结合使用 C#。共享用 .NET 编写的服务器端和客户端应用程序逻辑。
能够在 Windows、macOS 和 Linux 上开发和运行。
开源且以社区为中心。
集成现代客户端框架和开发工作流程。
支持使用 gRPC 托管远程过程调用 (RPC) 服务。
基于云且支持环境的配置系统。
内置依赖项注入。
轻量级、高性能且模块化的 HTTP 请求管道。
能够托管在以下位置
Kestrel
IIS
HTTP.sys
Nginx
Apache
Docker
并行版本控制
简化现代 Web 开发的工具。
选择 ASP.NET Core 允许您使用 Razor Pages 和 Blazor 等新技术开发应用程序,除了传统的 Model-View-Controller 方法。
但是,这并不意味着您必须立即从 ASP.NET 框架切换。虽然在许多方面它是一个更理想的选择,但如果您对当前设置感到满意并且没有任何痛点,则无需切换。如果您正在维护一个不再积极开发的旧版 ASP.NET 应用程序,尤其如此。ASP.NET 4.x 是一个成熟的框架,提供构建 Windows 上企业级服务器端 Web 应用程序所需的所需服务。
以下是一些旧版 ASP.NET 框架仍然是更好选择的情况。
您正在 Windows 服务器上运行,并且不需要应用程序的跨平台支持。
您希望在一个不经常更改的稳定环境中工作。
有严格的截止日期和发布计划。
您正在维护一个没有添加任何新功能的旧版应用程序。