次の方法で共有


RelationalQueryableExtensions.AsSplitQuery<TEntity> メソッド

定義

個別のデータベース クエリを使用してクエリ結果にコレクションを読み込むよう構成された新しいクエリを返します。

public static System.Linq.IQueryable<TEntity> AsSplitQuery<TEntity> (this System.Linq.IQueryable<TEntity> source) where TEntity : class;
static member AsSplitQuery : System.Linq.IQueryable<'Entity (requires 'Entity : null)> -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function AsSplitQuery(Of TEntity As Class) (source As IQueryable(Of TEntity)) As IQueryable(Of TEntity)

型パラメーター

TEntity

クエリ対象のエンティティの種類。

パラメーター

source
IQueryable<TEntity>

ソース クエリです。

戻り値

IQueryable<TEntity>

コレクションが個別のデータベース クエリを介して読み込まれる新しいクエリ。

注釈

この動作により、クエリが複数のコレクションを読み込むときにパフォーマンスが大幅に向上する可能性があります。 ただし、個別のクエリが使用されるため、同時実行更新が行われると、結果が一貫性が失われる可能性があります。 シリアル化可能な、またはスナップショットのトランザクションを使用すると、これを軽減し、分割されたクエリとの整合性を維持できますが、他のパフォーマンス コストと動作の違いが生じる可能性があります。

クエリの既定のクエリ分割動作は、 によって UseQuerySplittingBehavior(QuerySplittingBehavior)制御できます。

詳細と例については、「 EF Core 分割クエリ 」を参照してください。

適用対象