在linq2entities中自动加载关系

时间:2009-02-25 08:16:54

标签: vb.net linq .net-3.5 linq-to-entities

当我的模型中的两个实体之间存在关系时:

[GroupMember](*)-----(1)[User]

并尝试使用LINQ:

从此关系中选择项目

来自_user.GroupMember中的实体选择实体

除非我首先使用以下语句加载关系,否则我总是得到一个空结果:

_user.GroupMember.Load()

有没有办法避免像这样加载关系?

2 个答案:

答案 0 :(得分:1)

如果你有级联关系,你可以使用.Include("GroupMember.AnotherTable.YetAnotherTable")处理它们,这比必须进行链接包含调用要好一些。

答案 1 :(得分:0)

我刚刚意识到,当我从数据库加载用户时,我可以使用Include将UserMember加载到用户,如下所示:

Users=from entity in db.User.Include("GroupMember") select entity

但是如果我有几个关系并且可能想要访问关系上的关系,那就非常难看了。

所以我仍在为我的问题寻找更好/更好的解决方案。