.NET 8 Preview 6 主要更新总结
ASP.NET Core 的显著增强
.NET 8 Preview 6 版本为 ASP.NET Core 带来了多项重要更新,主要集中在 Blazor 框架的改进,同时还涉及调试体验、测试指标、API 编写、服务器、中间件等方面的优化。
Blazor 的服务器端渲染模式增强
- 表单模型绑定与验证:新增
SupplyParameterFromForm属性,允许组件属性直接从表单请求中绑定数据,并支持验证功能。 - 页面导航与表单处理:通过拦截请求并将响应应用到现有 DOM,Blazor 现在能够尽可能保留页面内容,提供更流畅的单页应用(SPA)体验,同时仍使用服务器端渲染。
- 流式渲染优化:在更新时保留现有 DOM 元素,提升交互速度和流畅性。开发者可以使用
@rendermode指令属性为组件实例指定渲染模式,获得更精确的渲染控制。 - Blazor WebAssembly 的交互式渲染:Blazor WebAssembly 现在支持组件的交互式渲染,尽管此功能尚未在 Blazor Web App 模板中公开。开发者可以手动启用此功能,并参考提供的 示例代码 进行实现。
Blazor 部分功能的改进
- Blazor 部分与其他功能的交互:改进了级联值的处理方式,值现在从其定义点流向部分内容,而不是在部分出口处渲染。此外,未处理的异常现在由部分内容的错误边界处理,而不是部分出口。
- 级联查询字符串值:Blazor 组件现在支持级联查询字符串值。
- Blazor Web App 模板的服务器交互性选项:新增了启用服务器交互性的模板选项。
- 模板整合:对 Blazor 模板进行了整合,简化了开发流程。
测试指标的改进
- IMeterFactory API:新增的 IMeterFactory API 将指标与依赖注入集成,简化了单元测试和多测试同时运行时的指标收集过程。
- 新增和改进的计数器:引入了新的计数器,包括路由成功与失败、异常处理、未处理请求和速率限制等指标。改进的计数器提供了有关连接持续时间和传输类型的更多详细信息。
其他重要更新
- 复杂表单绑定支持:在最小化 API 中增加了对复杂表单绑定的支持。
- HTTP.sys 内核响应缓冲:优化了 HTTP.sys 内核的响应缓冲性能。
- 基于 Redis 的输出缓存:引入了基于 Redis 的输出缓存功能。
- Web 应用类型的调试体验改进:提升了 Web 应用类型的调试体验。
开发工具与兼容性
- 建议开发者安装最新的 Visual Studio 2022 Preview 版本。
- 提供了 .NET 8 中 ASP.NET Core 的 重大变更列表,供开发者参考。
社区反馈与讨论
- 发布博客的 评论部分 充满了对 Blazor 改进的反应,用户积极参与讨论并提出问题,建议开发者探索评论部分以获取更多见解。
总结
此次 .NET 8 Preview 6 版本为 ASP.NET Core 带来了多项重要改进,尤其是在 Blazor 框架的服务器端渲染、表单处理、流式渲染和 WebAssembly 交互式渲染等方面。此外,测试指标的优化、复杂表单绑定的支持以及基于 Redis 的输出缓存等功能也为开发者提供了更多便利。建议开发者及时更新开发工具,并关注社区反馈以更好地利用这些新特性。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。