错误:【Self referencing loop detected with type】

Newtonsoft环境:LINQ+Newtonsoft

问题:若两表间有外键,如图

如果代码按如下写法则会报错:【Self referencing loop detected with type】


        var result = db.T_ZiGeJingLi.Where(p => p.ID == Convert.ToInt32(ZGZSID));
        string json = JsonConvert.SerializeObject(result);

经如下修改语句则会正常:

        var result = from i in db.T_ZiGeJingLi
                     where i.ID == Convert.ToInt32(ZGZSID)
                     select new
                     {
                         ID = i.ID,
                         ZhengShuBianHao = i.ZhengShuBianHao,
                         ZhengShuMingCheng = i.ZhengShuMingCheng,
                         HuoZhengDate = i.HuoZhengDate,
                         FaZhengJiGou = i.FaZhengJiGou,
                         Memo = i.Memo,
                         EmpID = i.EmpID
                     };
        string json = JsonConvert.SerializeObject(result);

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-01 05:27:59

错误:【Self referencing loop detected with type】的相关文章

JSON.NET的Self referencing loop detected with type的原因以及解决办法

模型中有循环引用是很常见的.例如,以下模型显示双向导航属性: 1: public class Category 2: { 3: public Category() 4: { 5: Products = new Collection<Product>(); 6: } 7: 8: public int Id { get; set; } 9: public string Name { get; set; } 10: public virtual ICollection<Product>

EF关于报错Self referencing loop detected with type的原因以及解决办法

1)具体报错 { "Message": "出现错误.", "ExceptionMessage": ""ObjectContent`1"类型未能序列化内容类型"application/json; charset=utf-8"的响应正文.", "ExceptionType": "System.InvalidOperationException", &q

EF实体生成关系导致相互循环取数据出现异常&quot;Self referencing loop detected for property &quot;

异常信息: Self referencing loop detected for property 'md_agent' with type 'System.Data.Entity.DynamicProxies.md_agent_5F7CB7C257B9164D0D18D2B3E8DA3838A3ED1C7F5D326A56B71D51234B89C401'. Path '[1].md_design[0]'. at Newtonsoft.Json.Serialization.JsonSerial

ef entity转json引起的Self referencing loop

问题简介:前段时间做项目时,将取到的entity往Redis cache里存放时报多重引用的错误. Self referencing loop detected for property 'CheckItemCategory' with type. 一.问题详情 1.chectItemCategory与CheckItem实体介绍 2.我们用ef取了List<CheckItemCategory>,以Json的形式存放到redis中.但在JsonConvert.SerializeObject时报多

Delphi的idhttp报508 Loop Detected错误的原因

一般是访问https时才出现"508 Loop Detected",idhttp+IdSSLIOHandlerSocketOpenSSL,这个在上篇文章中讲过了. 由于该问题网上资料极少,连外文资料也没卵用,起初我也以为是idhttp的重定向设置问题,但确认过没设置错. idHttp.HandleRedirects := True; 不过相比https,http的话不会出现这个问题,这就很奇怪了,继续测试... 那么发现,访问普通的https是有返回数据的并且没有报"508

微信公众号接口添加菜单时错误(errcode":40017 invalid button type)

POST提交时总是报错: {"errcode":40017,"errmsg":"invalid button type"} 最后查出来是由于数据中有中文引起的 解决: data = {"button":[ {"name": u"会员服务", "sub_button":[ {"type":"click","name&qu

关于ipywidgets插件,错误&#39;Widget Javascript not detected. It may not be installed or enabled properly.&#39;

一.问题描述: 安装ipywidgets后,我在运行下述代码时,出现了错误`` import torch import torchvision import torchvision.transforms as transforms import matplotlib.pyplot as plt import ipywidgets as widgets import sys sys.path.append("..") import d2lzh_pytorch as d2l 错误显示: D

C语言错误: HEAP CORRUPTION DETECTED

程序源代码: //写文件两种方式(文本文件和二进制文件) #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<string.h> //文本写文件 int writeWord(const char *path,const char *pword){ int ERRO_MSG = 0; if (path == NULL) { ERRO_MSG = 1; printf(&q

解决编译错误:dereferencing pointer to incomplete type 的办法

在使用c语言写程序时,可能遇到错误:error :dereferencing pointer to incomplete type.其实,这个错误是指针指向的结构体类型没有定义. 原因可能有很多,但最多情况可能下面两种: 1,使用库函数或内核等提供的结构体时,没有包含相应的头文件.解决方法很简单,就是包含对应头文件就ok了. 2,若是自己定义的结构体,而且这个结构体恰恰是定义在.c文件中.在这种情况下,在其他.c文件中使用该结构体指针时,也会出现类似错误. 就第二种情况,笔者找到两种解决方法: