.NET 10 RC2 发布,聚焦 SDK 稳定性与 MSBuild 改进
Source: InfoQ - Backend
微软发布了.NET 10候选发布版2",这是在正式发布前最终的预发布版本。正如.NET团队所报告的,RC 2附带了一份上线支持许可",允许在生产环境中部署,同时让开发者在正式发布前验证平台。该版本在Visual Studio 2026 Insiders和带有C#开发工具包的Visual Studio Code中得到支持。
.NET 10的官方发布日期是2025年11月11日,届时它将成为长期支持(LTS)版本,提供三年的补丁和更新。候选发布版1(RC1)于9月9日提供,随后是10月14日的RC2,这是在正式发布前的最后预览阶段。微软表示,这个版本主要关注验证、质量和稳定性,而不是功能添加。
根据发布说明,RC 2在核心领域如库、运行时、C#、F#、Visual Basic、ASP.NET Core & Blazor、Windows Forms、WPF或容器镜像中没有引入重要的新功能。相反,团队强调了增量质量改进,以确保顺利过渡到GA(正式发布)和对支持的各种负载的兼容性。
在这个版本中,.NET MAUI负载"收到了几个改进。Windows现在通过Permissions.RequestAsync()支持麦克风权限,提供了跨平台的统一权限模型。Android增加了对SafeAreaEdges的支持,改善了边缘到边缘渲染和键盘覆盖的布局行为。
RC 2还包括对XAML源代码生成"的增强,如报告所述,提供了更快的调试时视图膨胀和通过SourceGen属性的简化配置机制。微软将这些更新描述为一项持续工作的一部分,旨在提高MAUI开发的性能和可预测性。
在Android方面,RC 2引入了API 36.1"绑定,这是与Uno平台团队合作开发的。项目可以针对net10.0-android36.1以访问最新的平台API,同时EnablePreviewFeatures暂时仍然需要。该版本还继续实验性推出适用于Android的CoreCLR,允许开发者禁用Mono(UseMonoRuntime=false)并在新运行时上运行。虽然这个功能尚未准备好生产,但根据微软的说法,它代表了跨平台运行时统一的重要一步。
对于苹果开发者,现在为.NET for iOS、macOS、Mac Catalyst和tvOS提供了Xcode 26"绑定,确保与苹果的最新SDK兼容,并在.NET 9和.NET 10目标之间提供一致性。
RC 2中的Entity Framework Core"带来了稳定性和可靠性更新,如改进的复杂JSON映射处理、细化的迁移事务边界、通过ExecutionStrategy支持查询重试以及新的分析器警告,用于不安全的SQL连接。
此外,这个版本中的SDK级增强"使得基于.NET的MSBuild任务可以在Visual Studio和msbuild.exe中运行,弥合了.NET和.NET Framework构建环境之间长期存在的差距。通过声明任务与Runtime="NET"和TaskFactory="TaskHostFactory",如字面所述,作者可以在CLI和IDE之间重用相同的实现,而无需多目标。
正如工程团队所解释的,这个功能标志着MSBuild更广泛现代化工作的第一步。
这是使MSBuild更加灵活和有能力的更长远旅程的第一步。在未来的版本中,我们计划为MSBuild添加额外的功能,使其更容易编写和使用.NET任务,包括: 自动发现和加载.NET任务,无需指定Runtime或TaskFactory元数据减少MSBuild引擎和任务在进程外运行时的IPC性能开销支持进程外运行的.NET任务的宿主对象功能
最后,微软团队表示.NET 10 RC 2是一个发布质量的验证版本,为下个月的完整发布铺平了道路。他们鼓励开发者在2025年11月11日.NET 10正式发布之前,使用RC 2测试应用程序,并通过官方GitHub讨论分享反馈。
原文链接:.NET 10 Release Candidate 2: Finalizes SDK, MAUI Stabilization, and MSBuild Enhancements ahead of GA"