EF Core 1.0 - Include()生成多个查询

时间:2016-02-21 13:16:14

标签: entity-framework-core

我正在使用EF 7.0.0-rc1-final。

以下语句在服务器上生成多个查询。 这是正常的还是我遗失了什么?

Group myGroup = dbContext_
            .Set<Group>()
            .Include(x => x.GroupRoles)
            .ThenInclude(x => x.Role)
            .FirstOrDefault(x => x.Name == "Approver");

我在服务器上看到两个单独的查询:

Query 1

Query 2

这是标准的多对多方案。为什么是第一个查询?

由于

1 个答案:

答案 0 :(得分:9)

是的,即使在一对多场景中也是如此。

EF7会生成多个查询,以避免多次返回相同的数据。

以下是关于EF6 Include的一篇很棒的文章,了解为什么EF7需要进行此更改:Entity Framework pitfalls, include