2017-11-12 10 views
0

私のデータベース内の他のエンティティと関係のあるエンティティのデータを取得するクエリでは、FirstOrDefaultまたはFirstコマンドを使用しています。Entity Frameworkクエリの読み込みデータの最適化

私の質問は:コレクション上でFirstOrDefaultまたはFirstコマンドを実行すると、このエンティティに関連付けられた他のエンティティのすべてのデータがメモリに読み込まれますか?ここ

http://www.entityframeworktutorial.net/EntityFramework4.3/lazy-loading-with-dbcontext.aspx

+1

これは、使用するO/RMパターンによって異なります。 [これはあなたを助けるかもしれません](https://docs.microsoft.com/en-us/ef/core/querying/related-data) –

答えて

1

ルックエンティティのデフォルトの動作は、遅延ロードであるので、あなたが彼らのために頼むまで、データをロードしません。

+0

もう1つ、あなたはパフォーマンスについて興味があるようにラムについて質問しました。大規模なデータベースの場合は、これをオフにする方が良いと思う、私は違いを確認していないが、状況を想像している。 何千ものレコードをループし、参照先のタブから1つの値をチェックしています。 したがって、遅延ロードは、参照されるデータを取得するために何千ものsqlsを送信します。ループごとに1つ。 コンテキストからデータを取得しているときに手動で読み込むことができます。データを一度尋ねると思います。私が間違っていたら、それを書いてください。 –

関連する問題