EFコア1.0 - Include()は複数のクエリを生成する

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");

私は、サーバー上で実行される2つの別々のクエリを見る:

クエリ1

そして

クエリ2

これは多対多の標準的なシナリオです。なぜ最初のクエリですか?

ありがとう

受け入れられた回答

はい、1対多数のシナリオでも正常です。

EF7は同じデータを複数回返すことを避けるために複数のクエリを生成します。

ここでは、この変更がEF7に必要だった理由を理解するために、EF6インクルードに関する素晴らしい記事があります: Entity Frameworkの落とし穴、include



Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ