You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 9 OpenAPI端点抛出异常:‘节点必须为JsonValue类型’

.NET 9 OpenAPI 迁移中 InvalidOperationException: The node must be of type 'JsonValue' 异常处理

问题背景

从SwaggerGen迁移至.NET 9内置OpenAPI组件时,已通过移除模型验证中所有double.MaxValue的使用解决了一个兼容性问题,但访问/openapi/dev.json端点时抛出以下异常:

InvalidOperationException: The node must be of type 'JsonValue'

项目包含大量视图模型、表单模型及查询模型,但异常未提供明确的报错定位线索。

复现场景

经排查,当模型中可选的IEnumerable<string>类型数组字段添加[Length(0,10)]验证特性时,会触发该异常。移除该验证特性后,异常消失。推测其他针对数组类型的长度/范围类验证属性也可能引发同类异常。

临时解决方案

  • 临时移除数组字段上的[Length]验证特性,先保证OpenAPI文档生成正常;
  • 若业务需要保留数组长度验证,可改用自定义验证逻辑(如实现IValidatableObject接口)替代[Length]特性;
  • 全面排查所有模型中的数组类型字段,检查是否存在其他可能触发异常的验证属性,逐一移除验证并测试文档生成情况。

内容的提问来源于stack exchange,提问作者Parsa99

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 03:48:11