Entity framework 带有GroupJoin的投影中的EF急切负载收集
我试图在EF中使用Linq左连接到实体,并在其中一个实体中加载一个集合 左连接使用以下代码:Entity framework 带有GroupJoin的投影中的EF急切负载收集,entity-framework,linq-to-entities,Entity Framework,Linq To Entities,我试图在EF中使用Linq左连接到实体,并在其中一个实体中加载一个集合 左连接使用以下代码: var joinedResult = context.Set<Client>() .GroupJoin( context.Set<Project>(), client => client.Id, project => project.ClientId, (client, projects) =&g
var joinedResult = context.Set<Client>()
.GroupJoin(
context.Set<Project>(),
client => client.Id,
project => project.ClientId,
(client, projects) => new
{
Client = client,
Project = projects.FirstOrDefault()
})
.ToList();
但是,当从业务层之外的客户机对象访问集合时,我不断得到一个ObjectDisposedException
在从业务层返回之前,直接在查询之后访问字段,如下所示:
joinedResult.ForEach(result => result.Client.Categories.Count() /* NOP */);
这是可行的,但它当然会为每个结果生成一个新的数据库查询
我应该如何继续加载此集合
joinedResult.ForEach(result => result.Client.Categories.Count() /* NOP */);