1. ASP.NET Core 初探:什么是ASP.NET Core、为什么选择它、开发环境搭建
各位同学,欢迎来到第一节课。
说实话,每次带新人入门,我都要先问一个问题:你为什么要学ASP.NET Core? 如果只是为了找个工作,那路走不远。但如果你想知道「为什么微软这套东西能跑十几年还这么能打」,那咱们就聊到一块儿了。
1.1 什么是ASP.NET Core?
简单说,ASP.NET Core 是微软推出的跨平台、高性能、开源的 Web 框架。你可以用它来写 Web API、Web 应用、甚至微服务。
它跟老版的 ASP.NET 不一样。老版只能跑在 Windows 上,像被绑在椅子上。而 Core 是自由的——Windows、Linux、macOS,随便跑。
我记得2016年刚接触 Core 1.0 的时候,心里还犯嘀咕:「这玩意儿能行吗?」后来在项目中试了一把,发现启动速度比老版快了好几倍,内存占用也低。嗯,从那以后我就再也没回头写过老版 ASP.NET。
一句话总结:ASP.NET Core 是微软重新设计的 Web 框架,轻量、模块化、跨平台。
1.2 为什么选择ASP.NET Core?
你可能会问:「市面上有 Node.js、有 Spring Boot、有 Django,我凭什么选你微软家的?」
这个问题我当年也问过自己。后来在实际项目中,我慢慢找到了答案。
1.2.1 性能是真的能打
TechEmpower 的基准测试里,ASP.NET Core 常年排在前几名。说白了,它处理请求的速度非常快。我在一个高并发的项目中,用 Core 写的 API 扛住了每秒上万次的请求,CPU 占用才 30% 左右。换成别的框架,可能早就报警了。
1.2.2 跨平台,真香
以前做 .NET 开发,服务器必须买 Windows 授权,成本高。现在你可以在 Linux 上部署,用 Docker 容器跑,甚至用免费的 Ubuntu 服务器。我有个项目直接部署在阿里云的 CentOS 上,一分钱 Windows 授权费都没花。
1.2.3 生态成熟,社区活跃
NuGet 上有几十万个包,你要的功能基本都能找到。而且微软官方维护得非常好,每个版本都有详细的升级指南。我个人习惯是每半年更新一次 SDK,基本没出过大问题。
1.2.4 开发体验好
VS Code 配合 C# 插件,写起来很舒服。热重载、智能提示、调试体验,都做得不错。你想想看,改完代码不用重启就能看到效果,这效率能不高吗?
| 特性 | ASP.NET Core | 老版 ASP.NET |
|---|---|---|
| 跨平台 | ✅ 支持 | ❌ 仅 Windows |
| 开源 | ✅ 是 | ❌ 否 |
| 性能 | 极高 | 一般 |
| 模块化 | ✅ 按需加载 | ❌ 全量加载 |
| 容器支持 | 原生支持 | 需要额外配置 |
1.3 开发环境搭建
好,理论说完了,咱们动手。环境搭建其实很简单,就两步:装 SDK,装编辑器。
1.3.1 安装 .NET SDK
先去 dotnet.microsoft.com/download 下载最新的 .NET SDK。我建议你下载 LTS(长期支持)版本,比如 .NET 8,稳定,坑少。
安装完成后,打开终端(CMD 或 PowerShell),输入:
dotnet --version
如果看到类似 8.0.xxx 的数字,说明安装成功了。
小提示:我个人习惯在 Windows 上用 PowerShell,在 macOS 上用 Terminal。Linux 的话,Ubuntu 用 apt 安装最方便。
1.3.2 安装 VS Code
编辑器我推荐 VS Code,轻量、免费、插件多。去 code.visualstudio.com 下载安装就行。
装完之后,打开 VS Code,按 Ctrl+Shift+X 打开扩展商店,搜索并安装这几个插件:
- C# Dev Kit(微软官方,必装)
- .NET Extension Pack(包含常用工具)
- NuGet Gallery(方便管理包)
装完插件,重启 VS Code。
1.3.3 创建你的第一个项目
打开终端,找个目录,输入:
dotnet new webapi -n MyFirstApi
cd MyFirstApi
code .
这条命令会创建一个 Web API 项目,然后用 VS Code 打开它。你会在左侧看到一堆文件,别慌,咱们后面慢慢讲。
现在,按 F5 启动项目。浏览器会自动打开,显示一个 Swagger 页面。如果看到这个页面,恭喜你,环境搭建成功了!
注意:如果你在 macOS 或 Linux 上遇到「无法绑定到 https://localhost:5001」的错误,可能是因为没有安装开发证书。运行 dotnet dev-certs https --trust 即可解决。我曾经在 Ubuntu 上折腾了半小时才发现是这个原因……
1.4 避坑指南
最后,分享几个我踩过的坑:
- 版本问题:不要装预览版 SDK,除非你想当小白鼠。我吃过一次亏,预览版有个 bug,折腾了两天才发现是 SDK 的问题。
- 路径中文:项目路径不要有中文或空格。虽然现在 .NET 支持了,但某些工具还是会出问题。我习惯用全英文路径。
- 防火墙:如果你在公司网络下,记得检查防火墙是否阻止了 NuGet 的下载。我曾经在内网开发,配了半小时代理才搞定。
好了,第一节课就到这里。你只需要记住三件事:ASP.NET Core 是什么、为什么选它、怎么搭环境。下节课咱们开始写真正的代码。
对了,有任何问题,欢迎来找我聊。公众号:蓝海资料掘金营,微信 deep3321。