.NET 11 发布:C# 15 的联合类型与 Native AOT 命令行宿主
来源:devblogs.microsoft.com — 2026-11-09
📋 概述
.NET 11 是两年支持的 STS 版本,默认语言版本升到 C# 15,最大的变化是 union types 与 closed hierarchies:返回值可以是声明好的几种 case 之一,switch 能拿到穷尽性检查,不必再为凑一个返回类型而借用 object 或无关基类。工具链上 SDK 默认启用 Native AOT 的命令行宿主,help、version 这类命令不必启动托管运行时;MSBuild server 默认常驻;dotnet test 增加运行级超时与失败上限;容器发布用 SOURCE_DATE_EPOCH 做可复现镜像。ASP.NET Core 带来异步校验、OpenAPI 3.2,以及接 AG-UI 的实验性 Blazor AI 组件。
🔑 核心要点
- C# 15 的 public union ProductLookup(Product, ProductNotFound) 让编译器检查 switch 是否穷尽
- closed class 把派生限制在声明程序集内,编译器才能对继承层次做模式穷尽检查
- SDK 默认启用 Native AOT 命令行宿主,help/version 查询不再启动托管 CLI
- MSBuild server 默认在两次 CLI 调用之间保持常驻,减少重复启动开销;Linux/macOS 安装包靠程序集去重变小
- .NET MAUI 改用 CoreCLR 作为默认运行时,类库新增内置 Zstandard 压缩与更省事子的进程执行 API
💡 金句
结果类型直接告诉调用方它需要处理哪些结局,不必为了把它们塞进一个返回类型而借用 object 或某个无关的基类。
👍 0
👎 0
← 返回 Lobsters 首页