我正在使用EF 7.0.0-rc1-final。
以下语句在服务器上生成多个查询。 这是正常的还是我遗失了什么?
Group myGroup = dbContext_
.Set<Group>()
.Include(x => x.GroupRoles)
.ThenInclude(x => x.Role)
.FirstOrDefault(x => x.Name == "Approver");
我在服务器上看到两个单独的查询:
和
这是标准的多对多方案。为什么是第一个查询?
由于
答案 0 :(得分:9)
是的,即使在一对多场景中也是如此。
EF7会生成多个查询,以避免多次返回相同的数据。
以下是关于EF6 Include的一篇很棒的文章,了解为什么EF7需要进行此更改:Entity Framework pitfalls, include