RelationalQueryableExtensions.AsSplitQuery<TEntity> Yöntem

Tanım

Ayrı veritabanı sorguları aracılığıyla sorgu sonuçlarındaki koleksiyonları yüklemek için yapılandırılmış yeni bir sorgu döndürür.

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)

Tür Parametreleri

TEntity

Sorgulanan varlığın türü.

Parametreler

source
IQueryable<TEntity>

Kaynak sorgu.

Döndürülenler

IQueryable<TEntity>

Koleksiyonların ayrı veritabanı sorguları aracılığıyla yüklendiği yeni bir sorgu.

Açıklamalar

Bu davranış, sorgu birden çok koleksiyon yüklediğinde performansı önemli ölçüde geliştirebilir. Ancak, ayrı sorgular kullanıldığından, eşzamanlı güncelleştirmeler gerçekleştiğinde bu tutarsız sonuçlara neden olabilir. Seri hale getirilebilir veya anlık görüntü işlemleri bunu azaltmak ve bölünmüş sorgularla tutarlılık elde etmek için kullanılabilir, ancak bu başka performans maliyetleri ve davranış farkı getirebilir.

Sorgular için varsayılan sorgu bölme davranışı tarafından UseQuerySplittingBehavior(QuerySplittingBehavior)denetlenebilir.

Daha fazla bilgi ve örnek için bkz. EF Core bölünmüş sorguları .

Şunlara uygulanır