Lingua

RelationalQueryableExtensions.AsSplitQuery<TEntity> Metodo

Definizione

Restituisce una nuova query configurata per caricare le raccolte nei risultati della query tramite query di database separate.

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)

Parametri di tipo

TEntity

Tipo di entità su cui eseguire una query.

Parametri

source
IQueryable<TEntity>

Query di origine.

Valori restituiti

IQueryable<TEntity>

Nuova query in cui le raccolte verranno caricate tramite query di database separate.

Commenti

Questo comportamento può migliorare significativamente le prestazioni quando la query carica più raccolte. Tuttavia, poiché vengono usate query separate, questo può comportare risultati incoerenti quando si verificano aggiornamenti simultanei. Le transazioni serializzabili o snapshot possono essere usate per attenuare questo problema e ottenere coerenza con le query suddivise, ma ciò può comportare altri costi di prestazioni e differenze comportamentali.

Il comportamento di suddivisione delle query predefinito per le query può essere controllato da UseQuerySplittingBehavior(QuerySplittingBehavior).

Per altre informazioni ed esempi, vedere Query suddivise di EF Core .

Si applica a