aspnetcore下载
打开终端敲下 dotnet --list-sdks,下载如果返回的下载列表里没有 8.0 开头的版本号,那你下载 ASP.NET Core 的下载路子大概率走偏了。很多人第一反应是下载去搜索引擎找“ASP.NET Core 下载”,结果点进某个第三方站点,下载下回来一个几十兆的下载 exe,装完发现只有个孤零零的下载运行时,连 dotnet new webapi 都跑不起来。下载这玩意儿根本不需要单独下载。下载
微软把 ASP.NET Core 塞进了 .NET SDK 里。下载你装 SDK,下载Web 开发需要的下载那套东西——Kestrel 服务器、MVC 框架、下载Razor 引擎、下载Identity 认证模块——全部就位。下载单独去下 ASP.NET Core Runtime 的情况只有一种:你负责往生产服务器上部署,那台机器不跑编译,只负责托管已经发布好的应用。开发机上装 Runtime 不装 SDK,等于买了辆车没配钥匙。
去 dotnet.microsoft.com/download 这个地址,页面会自动识别你的操作系统。Windows 用户会看到三个选项:SDK、Runtime、Hosting Bundle。Hosting Bundle 是给 IIS 用的,里面包含了 Runtime 和 ASP.NET Core Module,如果你打算把应用挂在 IIS 后面,选这个。Linux 用户走包管理器最省事,Ubuntu 上两条命令:wget 拿微软的源配置包,dpkg -i 装完再 apt install dotnet-sdk-8.0。比手动解压 tar.gz 再配 PATH 干净得多。
版本号是个容易踩的坑。.NET 8 是 LTS,支持到 2026 年 11 月。.NET 9 是 STS,只有 18 个月生命周期。你要是给银行做内部系统,别碰 STS 版本,升级节奏跟不上。装 SDK 的时候注意,安装程序会同时装上对应版本的 ASP.NET Core Runtime 和 .NET Runtime,不需要你一个个勾选。装完之后 dotnet --info 会列出所有已安装的运行时,确认 Microsoft.AspNetCore.App 那一行存在就行。
有个细节值得说。如果你在 Windows 上同时装了多个版本的 SDK,global.json 文件可以锁定项目用哪个版本。没有这个文件,dotnet 命令默认调最高版本。我见过一个团队因为有人手贱装了预览版 SDK,导致整个 CI 流水线编译出来的东西行为不一致,排查了一整天才定位到 global.json 没写。这文件放在解决方案根目录,内容就三行:
{ "sdk": { "version": "8.0.400" } } Docker 用户更简单。mcr.microsoft.com/dotnet/sdk:8.0 这个镜像拿来构建,mcr.microsoft.com/dotnet/aspnet:8.0 拿来运行。多阶段构建的 Dockerfile 里,build 阶段用前者,final 阶段用后者,镜像体积能压到 200MB 以内。别用 dotnet/sdk 镜像直接跑生产,那里面带着编译器和 NuGet 缓存,纯属浪费空间。
下载速度慢是另一个老生常谈的问题。微软的 CDN 在国内某些网络环境下确实不稳定。临时方案是换 dotnetcli.azureedge.net 的镜像源,或者用 --azure-feed 参数指定。长期方案是走公司内网的 NuGet 镜像,把 SDK 安装包也缓存一份。我自己的做法是直接在 /usr/share/dotnet 下留一份 tar.gz 备份,新机器部署时 scp 过去解压,比重新下载快得多。
装完 SDK 之后,dotnet new list 能列出所有可用模板。如果 webapi、mvc、blazor 这些模板都在,说明 ASP.NET Core 部分完整。跑一个 dotnet new webapi -n TestApi,cd TestApi,dotnet run,浏览器打开 https://localhost:5001/swagger 能看到 Swagger UI,整个下载和配置流程就算走通了。别小看这一步,很多人卡在 HTTPS 开发证书没信任上,dotnet dev-certs https --trust 这条命令能省你半小时。
最后提一嘴 macOS。Apple Silicon 芯片的机器要确认下载的是 arm64 版本,x64 版本在 M 系列芯片上跑得起来但性能打折扣。用 Homebrew 的话 brew install --cask dotnet-sdk 会自动选对架构。装完在终端敲 dotnet --version,如果报 command not found,检查 /usr/local/share/dotnet 有没有加到 PATH 里。这些琐碎细节没人会主动告诉你,但每一个都能让你多折腾二十分钟。
(责任编辑:时尚)














