C#-EF v1的加载行为?
我提出的另一个实体框架(ADO.NET)问题. 一个简单的问题我真的找不到令人满意的答案: 加载到底需要做什么? IE.,当我有一个实体并想通过其子对象枚举时,说我有一个实体“ Group”,并且它有一个子代“ User”,我想从g.Users中的n中进行“ n.UserID = 4选择n“,我首先要调用g.Users.Load(); 这有点烦人,因为当我对未加载的集合进行查询时,我希望EF自动加载它-至少会抛出一些异常,而不仅仅是返回0结果吗? 我不得不处理加载的另一种情况:
由于某些原因,即使正确设置了n.GroupID(组的键),它也无法为n.Group提供空指针.同样,当我之前做Server.Groups.Load()(组是一台服务器的子级)时,它也可以工作. 关于何时调用哪个集合的Load()是否有确切的政策? 再次感谢你, 基本上,我们的策略是仅加载您在初始查询中必须执行的操作,以最大程度地降低性能影响.然后,当我们想访问引用的实体或实体集合时,我们将在以后检查并加载引用.这导致对数据库的查询增多,但是查询速度更快,并且我们仅在需要时加载辅助数据,而不是预加载我们可能需要的所有内容.在一个函数中,相同的属性可能会被检查两次,但是它只会被加载一次,并且我们可以确定我们只是在加载它,因为我们正在使用它. (编辑:淮北站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |