InfoQ

.NET 11 Release Candidate 2: Go-Live License and Updates Across Libraries, F#, MAUI, and WinForms

6.9内容质量
.NET 11 Release Candidate 2: Go-Live License and Updates Across Libraries, F#, MAUI, and WinForms

TL;DR · AI 摘要

.NET 11 Release Candidate 2: Go-Live License and Updates Across Libraries, F , MAUI, and WinForms - InfoQ InfoQ Homepage...

核心要点

  • 主题聚焦:.NET 11 Release Candidate 2: Go-Live License and
  • 来源:InfoQ,建议结合原文判断细节。
  • AI 分析暂不可用,本条为保底评分与摘要。
#AI#编程#后端#安全#产品
打开原文

.NET 11 RC 2 发布:生产环境许可与跨库、F#、MAUI 和 WinForms 更新 - InfoQ

InfoQ 首页新闻 .NET 11 RC 2 发布:生产环境许可与跨库、F#、MAUI 和 WinForms 更新

.NET

InfoQ 认证高性能团队计划(在线,11 月 17 日):为您的团队构建更清晰的运营模型。

.NET 11 RC 2 发布:生产环境许可与跨库、F#、MAUI 和 WinForms 更新

2026 年 10 月 19 日 3 分钟阅读

作者:

  • Almir Vuk

#### 关注我们

YouTube

232K 粉丝

LinkedIn

26K 粉丝

Instagram

新

RSS

19K 读者

X

57.1k 粉丝

Facebook

21K 点赞

Bluesky

收听本文 -

0:00

音频准备播放

您的浏览器不支持音频元素。

正常

1.25x

1.5x

喜欢

新下拉阅读列表

  • 阅读列表

微软已发布 .NET 11 RC 2 版本,该版本包含可用于生产环境的“生产环境许可”,如官方声明所述。该构建版本支持 Visual Studio 2026 Insiders 和安装了 C# Dev Kit 的 Visual Studio Code。据报告,该版本在库、运行时、SDK、NuGet、F#、ASP.NET Core、.NET MAUI 和 Windows Forms 等多个领域进行了更新,但未引入新的 C# 语言特性。

在库方面,CborReader 现在可以按块读取分块传输的有效载荷,仅在宽松一致性模式下使用 isFinalBlock 和 SlideData。新增两种实验性加密类型:CompositeMLKem 结合后量子和经典密钥封装,Hpke 仅提供基于经典 DHKEM 套件的混合公钥加密。

两者都需要通过 SYSLIB5009 和 SYSLIB5006 开关启用,如发布说明所述。ValidationAttribute.FormatMessage 允许主机为属性提供消息模板,SocketsHttpHandler.InitialHttp2MaxConcurrentStreams 会在新 HTTP/2 连接建立时限制流,直到服务器发送 SETTINGS 帧。

运行时更新聚焦可靠性,但包含一项重大变更。CoreCLR 默认在 iOS 和 tvOS 上禁用建议文件锁定,因为如官方说明所述,RC 1 中的 FileStream 锁可能导致应用进入后台时被操作系统终止。该平台不再强制执行 FileShare 限制,将 DOTNET_SYSTEM_IO_DISABLEFILELOCKING 设置为 0 可恢复锁定功能。

ASP.NET Core 新增功能有限,但为从 RC 1 升级的应用程序提供了多项变更。QuickGrid 的 AnchorMode 和 ItemComparer 参数不再处于实验阶段。IValidationMessageFormatter 已被 FormatMessage 取代,Blazor BasePath 组件迁移至 Microsoft.AspNetCore.Components 命名空间,实验性设备绑定会话包已从该构建版本移除。据报告,剩余的 AddRazorRuntimeCompilation 重载现在会发出 ASPDEPR003 警告。

在 SDK 方面,基于文件的程序现在支持在 #:property 指令中使用引号包裹的值,#:package、#:project 和 #:ref 指令可接受尾随 Name=Value 元数据项。MSBuild 在项目评估期间的通配符匹配速度提升,据微软 Windows 基准测试显示,其速度提升 10-13%,分配次数减少 16-34%。

NuGet 新增 --min-publish-age-hours 参数用于 dotnet nuget add source 和 update source 命令,当包冷却期导致没有可用浮动版本时,restore 命令将失败并返回 NU1020 错误。

F# 提供了多个预览功能。编译器新增了 return 和 await 的内在函数,用于基于运行时异步模型构建自定义计算表达式生成器,尽管如备注中所述,FSharp.Core 目前尚未提供此类生成器。

code
let calculation () =
    runtimeTask {
        let captured = 40
        let! delta = delayed 2
        return captured + delta
    }

现在 reraise() 可以在 async 和 task 表达式的 with 处理器内部使用。在预览功能之外,更多 List 和 Array 函数内联了回调以减少内存分配,Async.parallelLimit 限制了并发工作量,非整数枚举的位运算操作符现在会在编译时以 FS0001 错误失败。

.NET MAUI 的 maui 模板新增了 --ui csharp 选项,用于生成 C# 而非 XAML 的应用、外壳和主页面,多项目模板新增了 --avalonia 选项以创建 Avalonia 桌面项目。

MauiIcon 支持 Apple Icon Composer 的 .icon 包,UseiOSShellHandler 在 Apple 平台上启用基于处理器的 Shell。Android 新增了 API 37.2 绑定和 JDK 25 支持,而 Apple 工作负载现在需要 Xcode 27.0,使用其 SDK 构建的应用必须采用 UIKit 场景生命周期,如重大变更部分所述。

Windows Forms 优化了 .NET 11 的视觉样式。Application.SetDefaultVisualStylesMode 可选择渲染器版本,但 ToolStrip 和 DataGridView 在 .NET 11 下仍保持经典渲染。Application.SystemVisualSettings 暴露了 Windows 高亮颜色、文本缩放和高对比度状态的快照,FormRevealMode 延迟顶级窗体的首次呈现以减少背景闪烁。

新分析器 WFO3000 到 WFO3002 会标记无法通过设计器往返的代码,发布说明指出这在 AI 工具生成或重构窗体时特别有用。

本次发布的其他变更包括:在启动配置参数中使用 MSBuild 属性展开、F# 的 RequireNamedArgumentsAttribute、Android 上私有成员的 R8 混淆默认设置、Windows Forms 的 SuspendPainting 和 KioskModeManager、EF Core 的 SaveChanges 和 JSON 投影修复。

在 Reddit 上,讨论更多关注升级节奏而非功能本身。评论者询问还有多少团队会跳过奇数版本的发布,其他人则指出自从 .NET 9 开始,标准周期版本的生命周期结束日期与前一个 LTS 版本相同,因此升级到 .NET 11 不会增加支持时间。

其他开发者报告每次预览升级都会导致 MAUI 工作负载中断,质疑 Blazor 服务器端渲染性能与 Razor Pages 和 MVC 的对比,并欢迎 Windows Forms 的 KioskModeManager 组件。

对感兴趣读者和开发者,.NET 11 RC 2 的完整发布说明可在 GitHub 上的 dotnet/core 仓库中找到。

main wrapper for authors section

关于作者

section title

main wrapper for each author

#### Almir Vuk

显示更多

显示更少

#### 本内容属于 .NET 主题

##### 相关主题:

  • 开发
  • .NET 11
  • .NET
  • .NET 9
  • .NET 10
  • 相关编辑
  • 相关赞助商 《实用智能体编码实践手册》
  • 相关赞助商 批量自动化代码转换。修复漏洞、迁移框架、现代化遗留代码,覆盖所有仓库。免费试用 Moderne

InfoQ 新闻通讯

每周五内容精选,每周二发送。加入 25 万名资深开发者的社区。查看示例

我们保护您的隐私。