.NET 10 Preview 1 发布总结
概述
2024年2月底,.NET 10 Preview 1 正式发布,带来了跨平台的多个重大更新和改进。此版本在 .NET Runtime、SDK、类库、C#、ASP.NET Core、Blazor、.NET MAUI 等方面均有显著提升。
ASP.NET Core 更新
- OpenAPI 3.1 支持:ASP.NET Core 现在支持生成符合 JSON Schema draft 2020-12 的 OpenAPI 文档,并简化了 OpenAPI 版本的配置方法。
- YAML 格式支持:开发者现在可以以 YAML 格式提供 OpenAPI 文档,相较于 JSON 格式更简洁,便于管理较长的描述。
- 其他改进:包括为
ProducesResponseType
添加响应描述、RedirectHttpResult.IsLocalUrl
的 URL 验证、以及使用顶级语句的应用程序的集成测试改进。 - 未来计划:YAML 格式的 OpenAPI 文档生成将在未来的预览版中支持。
Blazor 更新
- QuickGrid 改进:新增
RowClass
参数,支持条件样式。 - 脚本优化:Blazor 脚本现在作为静态 Web 资产提供,并改进了预压缩,显著减小了文件大小,提升了开发效率。
.NET MAUI 更新
- 质量改进:针对 iOS、Mac Catalyst、Android 等平台进行了质量优化,
CollectionView
处理程序在 iOS 和 Mac Catalyst 上默认启用,提升了性能和稳定性。 - Android 16 (Baklava) 支持:新增对 Android 16 Beta 1 的支持,最低支持的 Android API 版本提升至 API 24,并增加了 JDK-21 支持。
- 开发简化:.NET Android 项目现在可以使用
dotnet run
命令运行。 - Trimmer 警告:iOS、macOS 和 tvOS 应用的 Trimmer 警告默认启用,帮助开发者解决潜在的代码修剪问题。
Entity Framework Core 更新
- LINQ 支持改进:新增对
LeftJoin
操作符的一流支持,简化了复杂 LINQ 查询。 - ExecuteUpdateAsync 改进:支持常规非表达式 Lambda,便于操作。
- 其他优化:SQL Server 脚手架、日期/时间函数翻译、
ICollection<T>
的Count
操作性能等方面均有改进。
C# 14 更新
- 字段支持属性:新增对字段支持属性的支持,简化了从自动实现属性到自定义属性的过渡。
- nameof 表达式:支持未绑定的泛型。
- Span<T> 和 ReadOnlySpan<T>:新增隐式转换,便于操作。
- Lambda 表达式:支持
ref
和in
参数修饰符,无需指定类型。 - 实验性功能:允许开发者改变字符串字面量在 PE 文件中的生成方式,提升性能。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。