自循环引用怎么解决

yaojunyi3724 2014-08-13 04:38:05
使用linq to sql创建了有外间关联的两个实体
json序列化返回查询结果 报错:Self referencing loop
之前是没有关联的 查询通过linq join不会报错
后来因为同时添加主从表记录 涉及从表的外键 希望使用linq的默认事务 所以为数据表添加了关联
但是查询就出问题了 怎么办
不希望手动修改linq的实体类 因为一旦数据表有修改,从数据库更新模型后 生成的代码就被覆盖了 改起来麻烦
项目是mvc preview3 通过默认的json方法返回数据
...全文
167 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaojunyi3721 2014-08-13
  • 打赏
  • 举报
回复
我已经放弃了外键关联 查询没问题了 现在要解决同时添加主从表记录时如何使用linq的事务 使用的TransactionScope 这篇文章介绍的比较好 http://www.cnblogs.com/happyhippy/archive/2010/01/27/1657552.html
yaojunyi3724 2014-08-13
  • 打赏
  • 举报
回复
试了网上的一个方法:主要是设置json.net的JsonSerializerSettings的树形ReferenceLoopHandling 为枚举值ReferenceLoopHandling.Ignore 虽然不报错 但是输出结果不正确
yaojunyi3724 2014-08-13
  • 打赏
  • 举报
回复
from t2 in dbContext.DeleverManage
                                       where t2.CarId == t1.Identifier
                                       select t2.DeleverInfo.Select(t=>t.GoodsNum).Sum()
一旦在一个查询中用到两个关联的表就会报错

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧