写点什么

.NET 10 预览版本 4:改进的 JSON 补丁、Blazor 诊断、OpenAPI 集成等

作者:Almir Vuk

  • 2025-05-22
    北京
  • 本文字数:1184 字

    阅读完需:约 4 分钟

大小:584.24K时长:03:19
.NET 10预览版本4:改进的JSON补丁、Blazor诊断、OpenAPI集成等

微软发布了.NET 10的第四个预览版本,为带来了一系列的增强功能。如 ASP.NET Core、Blazor、.NET MAUI、WPF、Entity Framework Core,以及运行时等。

 

这个版本引入了一个新的JSON补丁(Patch)实现,为在 ASP.NET Core 中使用 System.Text.Json,提供了一个比之前基于 Newtonsoft.Json 版本更高效的替代方案。虽然它提高了性能并减少了内存使用,但需要注意的是,新实现不支持动态类型,所以它不是一个完全的替代品。

 

此外,对最小 API 验证的支持已扩展到了记录类型,开发人员现在可以使用转换器以编程的方式生成 OpenAPI 模式。可以使用新添加的转换器上下文方法将这些模式动态添加到 OpenAPI文档中。改进的XML文档集成现在允许包含来自外部程序集的注释,从而改善了主项目中未定义类型的 API 文档。

 

这个版本中的 Blazor 增强功能包括NavigationManager中的一个新的NotFound方法,用于在渲染过程中发出丢失页面的信号。静态服务器端渲染期间的Navigation行为也已与交互式场景对齐,移除了之前抛出的 NavigationException。

 

Blazor 的 WebAssembly 运行时现在提供了详细的诊断功能,支持性能跟踪、内存转储和运行时指标的收集,尽管启用该功能可能会增加应用程序的大小并降低性能。

 


(Blazor WebAssembly 运行时诊断,来源:GitHub发布说明

 

JavaScript互操作已经通过新 API 进行了扩展,可以直接从.NET 调用 JavaScript 对象的构造函数和访问属性。还增加了通过IJSObjectReference引用 JavaScript 函数的支持。

 

通过预加载静态框架资产和将启动清单合并到 dotnet.js 文件中,Blazor WebAssembly 应用程序现在获得了更好的运行时性能。相关模板更新包括对导入映射的支持和通过 OverrideHtmlAssetPlaceholders 属性改进的资产指纹识别。

 

关于.NET MAUI,预览版本 4 在跨多个平台上引入了改进,包括日期和时间选择器中的可空支持、移动设备上的增强媒体选择,以及与输入和渲染行为相关的各种缺陷修复。

 

WPF 的更新包括对基于文本的控件的Fluent主题样式进行了细化,以及对消息框和共享剪贴板 API 的改进。据报道,通过代码清理和重构实现了显著的性能提升,同时在影响 Fluent 系统主题模式下影响 TextBox 和 DatePicker 的已知问题已经得到了确认,预计将在预览版 5 中得到解决。

 

此外,Entity Framework Core 10带来了对 Azure Cosmos DB 上的全文搜索和混合搜索支持,支持更高级的搜索查询。全文搜索现在可以在 EF Core API 中建模,并直接在 LINQ 查询中使用。

 

此外,在 EF9 中实验性引入的向量相似性搜索现在已经达到了稳定状态,并扩展了功能,包括对自有参考实体的支持。

 

这个版本中的其他变更包括对 Kestrel 中的WebApplicationFactory测试的改进、增强的OpenAPI.NET支持、为一致性而重命名的 API,以及对 EF Core SQL 转换和性能的各种改进。

 

最后,对于感兴趣的读者,请参阅.NET GitHub 存储库中的完整发布说明

 

原文链接:

https://www.infoq.com/news/2025/05/dotnet-10-preview-4/

2025-05-22 10:226616

评论

发布
暂无评论
发现更多内容

APICloud平台使用融云模块实现音视频通话实践经验总结分享

YonBuilder低代码开发平台

前端开发 APP开发 APICloud 融云 跨端开发

做毕设用不起GPU?亚马逊云SageMaker免费给你用

亚马逊云科技 (Amazon Web Services)

学习

龙蜥开发者说:做开源,兴趣是最好的源动力 | 第1期

OpenAnolis小助手

开源 创作 开发者故事 兴趣是动力

OceanBase 社区版 运维管控平台 OCP 功能解读

OceanBase 数据库

OCP oceanbase OceanBase 开源 OceanBase 社区版

关于知识库:你需要知道的一切

小炮

聊聊 kerberos 的 kinit 命令和 ccache 机制

明哥的IT随笔

数据安全 kerberos

租房小程序

源字节1号

前端开发 后端开发 租房小程序

安全app之PHP代码审计

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 代码审计

什么是以特性为核心的持续交付|阿里巴巴DevOps实践指南

阿里云云效

云计算 阿里云 研发效能 研发 DevOps实践指南

租房小程序

源字节1号

前端开发 后端开发 租房小程序

VuePress 博客之 SEO 优化(一) sitemap 与搜索引擎收录

冴羽

Vue vuepress SEO 博客搭建 sitemap

杜绝不良信息侵害未成年,皮皮APP发起语音社交行业自律书

联营汇聚

手把手教程|构建无服务器通用文本识别功能

亚马逊云科技 (Amazon Web Services)

架构

你的密钥被我看见了 !逆向获取密钥

H

网络安全 逆向

fastposter v2.6.0 发布 电商海报生成器

物有本末

fastposter 海报生成器 电商海报

喜讯!openGauss社区入选2021年 “科创中国”榜单

hexo+github搭建个人博客前期部署工作

静Yu

Hexo

云计算及国内主流云厂商概述

穿过生命散发芬芳

3月月更

好云推荐官丨飞天加速之星怎样选择云服务器ECS?

阿里云弹性计算

阿里云 采购季 好云推荐官

敏捷小游戏的思考-上篇

LigaAI

团队管理 敏捷实践

如何从头到脚彻底解决一个MySQL Bug?华为云数据库高级专家带你看

华为云数据库小助手

bug GaussDB 华为云数据库 GaussDB(for MySQL)

基于深度学习的时间序列预测

云智慧AIOps社区

被冰封的 Bug:Fishhook Crash 修复纪实

声网

Dev for Dev fishhook

如何从头到脚彻底解决一个MySQL Bug

华为云开发者联盟

MySQL 数据库 华为云 bug GaussDB(for MySQL)

2 月月更获奖名单公布!获奖的小伙伴速速领取奖励啦!

InfoQ写作社区官方

2月月更 热门活动

如何使用OKR管理团队?

优秀

企业内PAAS建设的经验与教训

Crazy

中间件 PaaS 经验 云原生应用

盲盒风潮过后,中国收藏玩具市场该何去何从?

易观分析

盲盒 潮玩

基于WEB快速开发平台的轻量ERP

雯雯写代码

ERP 快速开发平台

openGauss社区成立ReleaseManagement SIG

基于微信小程序的大学社团平台的可研方案

CC同学

.NET 10预览版本4:改进的JSON补丁、Blazor诊断、OpenAPI集成等_微软_InfoQ精选文章