JsonException: A possible object cycle was detected which is not supported 检测到可能的对象循环,这是不受支持的

2023-12-18

异常消息:JsonException: A possible object cycle was detected which is not supported. This can either be due to a cycle or if the object depth is larger than the maximum allowed depth of 32.

译文:JsonException:检测到可能的对象循环,这是不受支持的。这可能是由于循环,或者如果对象深度大于32的最大允许深度。

如图:

在控制器方法中返回DataTable:

控制器调用方法大致如下:

经过异常消息分析后,发现默认使用的是:System.Text.Json 进行的序列化操作,经过调试代码发现System.Text.Json 默认最大深度32,默认值为0表示最大深度为64,如下图:

上图译文:获取或设置序列化或反序列化JSON时允许的最大深度,默认值为0表示最大深度为64。

修改Startup->ConfigureServices方法如下:

原方法:

修改后:

运行控制器方法:

结果返回很多DataTable属性,是前端根本不需要的,由于System.Text.Json对于DataSet、DataTable 不是很友好,System.Text.Json(从 .NET Core 3.1 开始),为了能够序列化这些类型,您需要为JsonConverter<T>您需要的类型实现自己的类型并在JsonSerializerOptions,详见文档: 如何编写用于 JSON 序列化的自定义转换器 - .NET | Microsoft Learn

转变方向,使用 Microsoft.AspNetCore.Mvc.NewtonsoftJson,再次修改Startup->ConfigureServices方法如下:

返回结果:

序列化结果一切正常,希望本文对你有帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JsonException: A possible object cycle was detected which is not supported 检测到可能的对象循环,这是不受支持的 的相关文章

随机推荐

  • RFID工业识别系统的优势和价值

    RFID是物联网感知层最重要的组成部分之一 它可以通过感知物品来实现智能化识别和管理 实现不同设备之间的互联 本文将深入探讨RFID工业识别系统的优势和价值 并探讨其实际应用的案例情况 RFID工业识别系统的优势和价值 RFID作为物联网感
  • ubuntu22安装python3虚拟环境

    文章目录 安装python虚拟环境工具venv 创建项目根目录 创建虚拟环境 开启虚拟环境 安装项目依赖 退出虚拟环境 安装python虚拟环境工具venv 选择合适版本 root gslserver sudo apt install py
  • 向华为学习:基于BLM模型的战略规划研讨会实操的详细说明,含研讨表单(三)

    岁末年初 公司如何做战略规划 用华为和许多标杆企业在用的BLM模型来组织战略规划研讨会是一种行之有效的结构化方法 前面两篇文章 华研荟结合自己的经验和实践 详细介绍了基于BLM模型的战略规划研讨会的设计和组织流程 以及战略研讨会开始前的准备
  • 工业RFID读写器性能参数解析

    工业RFID读写器的性能参数主要有以下几项 工作频率 输出功率 输出接口 读写器类型 工作方式 读写器优先或电子标签优先等 1 工作频率 RFID读写器的工作频率是指其工作的频率范围 通常由读写器的工作频率决定 同时要与电子标签的工作频率保
  • postgresql安装

    这里写自定义目录标题 准备主机环境 配置网卡 关闭selinux 关闭防护墙 yum安装pg 登陆官网 安装yum源 安装12版本pg
  • 题解 | #平均活跃天数和月活人数#

    金融科技岗分享 欢聚shopline 凉 又遇毁到offer 爱奇艺互动产品运营实习面经 百度大搜2024校招补录 搜索时效性团队工作职责 1 通过query理解 召回 排序全链路的优化 持续优化百度搜索时效排序效果2 持续探索落地最前沿的
  • windows netstat命令

    前言 Netstat是控制台命令 是一个监控TCP IP网络的非常有用的工具 它可以显示路由表 实际的网络连接以及每一个网络接口设备的状态信息 Netstat用于显示与IP TCP UDP和ICMP协议相关的统计数据 一般用于检验本机各端口
  • 机器配音效果很好的软件是什么?这篇文章告诉你

    听说你对ai配音工具感兴趣啊 那我来跟你说说 这些东西可真是让人大开眼界 你想象一下 用一款ai配音工具 你就可以变身为任何人 不需要真的买那些昂贵的化妆品和服装 也不需要练习无数个小时来模仿别人的声音 无论是制作幽默搞笑的配音 还是严肃正
  • sqlserver-存储过程

    sqlserver代码格式化网站 https www dpriver com pp sqlformat htm 存储过程中的SET ANSI NULLS ON有什么用 1 SET ANSI NULLS ON null与null不相等 2 S
  • SpringBoot Whitelabel Error Page 报错--【已解决】

    springboot 报错信息如下 这个报错页面就是个404 代表你访问的url 没有对应的的requestmapping 其实没啥影响的一个问题 但是看到 Error 就是不爽 改了他丫的 解决方法如下 一 调整 application
  • sqlserver-备份和还原

    为何备份 备份 SQL Server 数据库 在备份上运行测试还原过程以及在另一个安全位置存储备份副本可防止可能的灾难性数据丢失 备份是保护数据的唯一方法 使用有效的数据库备份 可从多种故障中恢复数据 例如 介质故障 用户错误 例如 误删除
  • 2019系统修复

    修改启动顺序 尝试从最后一次正确配置启动 然后删除最后安全的程序 准备usb系统盘 用系统引导盘进入命令提示符 chkdsk c 在只读模式看下是否磁盘有问题 sfc scannow命令 在管理员命令提示符窗口输入 sfc scannow命
  • ai配音工具有什么?这款软件让你的文本瞬间变成生动的语音

    随着科技的不断进步 人工智能已经渗透到了我们日常生活中的方方面面 其中 ai配音工具就是一项令人瞩目的成果 这个工具可以通过计算机模拟人类的声音 将文本转换成自然流畅的语音 ai配音工具不仅可以为我们提供高质量的音频素材 还能为各行各业带来
  • 【git学习笔记 01】打标签学习

    文章目录 一 声明 二 对标签的基本认知 什么是标签 为什么要打标签 如何生成类似github中readme的图标 三 标签相关命令 四 示例操作 一 声明 本帖持续更新中 如有纰漏 望批
  • 常用windows命令-备忘

    文章目录 windows命令大全 windows命令大全 1 gpedit msc 组策略 2 utilman 辅助工具管理器 3 Nslookup IP地址侦测器 4 explorer 打开资源管理器 5 diskmgmt msc 注销命
  • linux路由

    网络拓扑 配置route主机 R1 网卡配置 eth0 TYPE Ethernet PROXY METHOD none BROWSER ONLY no BOOTPROTO static DEFROUTE yes IPV4 FAILURE F
  • 力扣每日一题:162. 寻找峰值(2023-12-18)

    力扣每日一题 题目 162 寻找峰值 日期 2023 12 18 用时 10 m 9 s 时间 0 ms 内存 40 54 MB 代码 class Solution public int findPeakElement int nums i
  • esProc SPL

    esProc SPL是一种用于数据处理的脚本语言 具有设计良好的丰富库函数和强大的语法 可以通过JDBC接口在Java程序中执行 并独立进行计算 Github地址 GitHub SPLWare esProc esProc SPL is a
  • ipfire

    安装 网卡地址配置 非常重要 配置不正确 影响ipfire正常工作 setup可以进入设置界面 配置 创建端口转发规则 设置端口转发是一项非常常见的任务 本指南解释了如何快速设置端口转发规则 请查看防火墙规则参考以了解更多说明 技术背景 端
  • JsonException: A possible object cycle was detected which is not supported 检测到可能的对象循环,这是不受支持的

    异常消息 JsonException A possible object cycle was detected which is not supported This can either be due to a cycle or if t