EF 关联死循环

问题描述

EF实体关联后感觉是死循环

解决方案

解决方案二:
两个表都是外键了吧~关于角色,因为一个用户可能有多个角色所以我还是觉得以下的设计好一点UserInfoUserRoleUserInfoRoleMapping
解决方案三:
按照正常设计用户角色用户角色中间表用户关联用户角色中间表角色关联用户角色中间表这样主外键设计没错EE自动关联出来其实也没错但是EF会不断的向下关联更让我纳闷的事居然没报错按照道理这样关联下去是无下限的应该是死循环。。。请教怎么解释
解决方案四:
Lazyloading
解决方案五:

解决方案六:
EF的加载是延迟加载,不会立刻把素有的数据都加载出来.调用到的时候才加载.所以在这种情况上,EF救了你...
解决方案七:
默认是延迟加载。带来的问题就是当你循环子对象属性的时候就会触发一次数据库查询,当循环处理的时候带来的性能问题是令人发指的慢……
解决方案八:
厉害。。。。。。。。。。。。。。。。
解决方案九:
EF有延迟加载,可以用Select方法解决这个死循环

时间: 2024-09-08 10:41:46

EF 关联死循环的相关文章

EF 关联查询数据库次数

问题描述 如何做到只查询一次? 解决方案 解决方案二:除了第一次查询以外,你应该再调试查看一下后10次查询的sql语句.从小率考虑,你的sysrole跟sysmoudle表之间有外键关联吧?解决方案三:嗯.两表之间是有关联的我做了如下改动.Include("tSysMoudle")varobj=nContext.tSysRole_Right.Include("tSysMoudle").Where(o=>o.tSysMoudle.iflag==2&&am

EF 关联 嵌套 查询 问题

问题描述 publicclassNews{ publicintID{get;set;} publicstringTitle{get;set;} publicList<Role>RoleList{get;set;}}publicclassRole{ publicintID{get;set;} publicstringTitle{get;set;} publicList<User>UserList{get;set;} publicList<News>NewsList{get

EF 自关联表主键自增情况下,不能添加记录的问题,有谁解决过?

问题描述 EF 自关联表主键自增情况下,不能添加记录的问题,有谁解决过? 如题,我的系统中因为一个特定原因,需要一张自关联表(thisTable)来简化逻辑, 该表主键是自增的,结果发现无法添加记录, 错误消息:无法确定"db.thisTable"关系的主体端.添加的多个实体可能主键相同. 请问,有人解决过这个问题吗? 解决方案 自己解决了,顺便分享给大家: 在EF的设定里,自关联的表主键外键,都不能为空(为空就会破坏数据的完整性), 这在两表关联时没问题,但在自关联就有一个悖论,那就

EF MVC 关联实体 更新操作 代码为什么要这么写?

问题描述 EF MVC 关联实体 更新操作 代码为什么要这么写? 这是从 EF自动生成的edit上修改的.关于文字类型的操作 ArticleCategory: public partial class ArticleCategory : Entity { public ArticleCategory() { this.Article = new HashSet<Article>(); } [Display(Name = "分类名称")] [StringLength(225,

EF里单个实体的增查改删以及主从表关联数据的各种增删改查

原文:EF里单个实体的增查改删以及主从表关联数据的各种增删改查 本文目录 EF对单个实体的增查改删 增加单个实体 查询单个实体 修改单个实体 删除单个实体 EF里主从表关联数据的各种增删改查 增加(增加从表数据.增加主从表数据) 查询(查询导航属性为集合.查询导航属性为单个对象) 修改(修改从表的外键) 删除(删除主从表关系.删除主表数据.删除主从表数据.修改从表数据外键) 补充内容 SaveChanges方法提交多次操作 DbSet.Add方法返回当前实体 源码和系列文章导航 注:本章节多次演

EF如何操作内存中的数据以及加载相关联表的数据:延迟加载、贪婪加载、显示加载

原文:EF如何操作内存中的数据以及加载相关联表的数据:延迟加载.贪婪加载.显示加载 之前的EF Code First系列讲了那么多如何配置实体和数据库表的关系,显然配置只是辅助,使用EF操作数据库才是每天开发中都需要用的,这个系列讲讲如何使用EF操作数据库.老版本的EF主要是通过ObjectContext来操作数据库的,一看是Object打头的,自然相当庞大,方法也比较多.到了经典的4.1版本,EF小组推出了一些更简单好用的API,就是DbContext,它包括更常用的方法.看看EF小组是怎么说

EF删除两个实体间的关联之后,出现了问题

问题描述 错误1错误3023:映射从第452行开始的片段时有问题:必须映射表R_UserInfo_ActionInfo中的列R_UserInfo_ActionInfo.RoleInfo_ID:它没有默认值并且不可以为Null.D:ProjectsOAOA.ModelModel1.edmx4539OA.Model不知道怎么改,点进映射表想删也删不了,我是删了R_UserInfo_ActionInfo表与RoleInfo表之间一对多的关联才有这问题的 解决方案

EF性能之关联加载

本文转载:http://www.cnblogs.com/nianming/p/3494781.html   延迟加载: 第一:在需要延迟加载的属性前加上virtual ,该属性的类型可以是任务的集合类型ICOLLOCT<T>或者是0/1..1关联属性. 如: public virtual List<Product> Products { get; set; } 

ASP.NET MVC+EF框架+EasyUI实现权限管理系列(23)-设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用

原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(23)-设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装          (5):前台Jquery easyUI实现   (6):EF上下文实例管理    (7):DBSession的封装   (8):DBSessi