Asp.Net Core报错:System.Text.Json.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
检测到不支持的可能对象循环。这可能是由于周期或物体深度大于最大允许深度32。
这是由于进行了对象嵌套或ef 查询进行了预加载(关联加载)引起的,就像解释说的“对象循环”,层级太深解析不了。
解决方法:
添加 Microsoft.AspNetCore.Mvc.NewtonsoftJson 包
Startup中添加服务,忽略循环引用
services.AddControllers().AddNewtonsoftJson(option =>
//忽略循环引用
option.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore
);
services.AddControllers().AddNewtonsoftJson(option => //忽略循环引用 option.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore );
或者
通过另外创建一个类对查询到的数据进行封装后再返还。