フィルタリングを使用してEF Core 5でデータ検索を最適化 エンティティフレームワークコア5フィルタリングされた
ステートメントを使用して、データの読み込み効率を向上させます。これにより、最初のクエリ中に選択的なデータ取得が可能になり、不要なデータ転送が最小限に抑えられます。Include
機能
いくつかのフィルター操作は、ステートメント内でサポートされています:
Include
Where
/OrderBy
OrderByDescending
/ThenBy
ThenByDescending
Skip
Take
この例は、著者に基づいてフィルタリング投稿を示しています。
重要な考慮事項
<code class="language-csharp">using (var context = new BloggingContext()) { var blogs = context.Blogs .Include(blog => blog.Posts.Where(post => post.Author == "me")) .ToList(); }</code>
フィルタリングされたコレクションは、怠zyな読み込み構成に関係なく、ロードされたものとしてマークされています。 複数のフィルターされた
ステートメントが結果を蓄積しますInclude
EF Coreの変更追跡は、関係の修正によりコレクションに追加のデータを追加する可能性があります。
メインクエリの結果カウントには影響しません。 メインクエリで句を使用して、全体的な結果をフィルタリングします。
投影との相互作用
予測は一般にステートメントを無視します。 ただし、投影に関連性のあるエンティティが含まれている場合、
が適用されます。 これらのポイントを理解することにより、開発者はフィルタリングされたを効果的に利用して、デュカルを効率的にロードおよびフィルタリングすることができます。
以上がef core 5に含まれることを使用してデータを効率的にフィルタリングするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。