【问题标题】:Entity Framework 4 POCO - Lazy + Eager LoadingEntity Framework 4 POCO - 延迟加载+急切加载
【发布时间】:2010-07-27 07:32:09
【问题描述】:

我有以下数据库结构(简化版):

Comments - CommentId, UserId
Users - UserId
UserDetails - UserId, Address, Phone, etc.

我正在使用 EF 4POCOsComment 类的 User 属性标记为 virtual(以启用延迟加载)。但是,我希望在加载(延迟)User 属性时也加载其UserDetails 属性(关系用户 - UserDetails 为 1:1)。那可能吗?我可以以某种方式指定它吗?我想以某种方式进行惰性+急切加载..

【问题讨论】:

  • 所以你想要延迟加载User 数据。但是,当User 被延迟加载时,您是否想确保UserDetails 也同时被加载?
  • 我不知道你简化了多少,但如果 UserUserDetails 表真的是 1:1 而不是 1:0..1 或 0..1: 0..1,您应该能够将 to 表合二为一,并加载所有内容惰性...
  • @Pure.Krome - 是的。 @Tomas Lycken - 好吧,我的数据库设计是这样的,我不能改变它(我也不想)

标签: entity-framework lazy-loading eager


【解决方案1】:

不,你不能那样做。但是,您可以使用entity splitting 技术将多个表转换为一个实体。听起来这就是你真正想要的。

【讨论】:

  • 啊-好皮卡@Craig :) 这有点像一个视图,而无需制作视图....
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-09-30
  • 2020-03-10
  • 2017-02-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-14
相关资源
最近更新 更多