エンティティフレームワーク:ネストされたデータを効率的にロードします
Entity FrameworkのInclude()
マルチレベルの熱心な荷重の場合、EF 6コアとEFコアの両方でサポートされているラムダ式を利用します。 これにより、インクルージョンのためにネストされた特性を正確に選択できます。
ef 6例:
<code class="language-csharp">using System.Data.Entity; query.Include(x => x.ApplicationsWithOverrideGroup.Select(y => y.Application));</code>
これらの例は、
<code class="language-csharp">using Microsoft.EntityFrameworkCore; query.Include(x => x.ApplicationsWithOverrideGroup) .ThenInclude(x => x.Application);</code>
プロパティを含める方法を示しており、単一のデータベースクエリで完全なデータ取得を確保します。 これにより、データベースへの複数のラウンド旅行のパフォーマンスオーバーヘッドが防止されます。 この手法を採用することにより、複雑なデータ構造を効率的に管理し、怠zyなロードに深くネストされたプロパティに関連するパフォーマンスのボトルネックを回避できます。
以上がEntity Framework の Include() を使用して、深くネストされたプロパティを積極的に読み込む方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。