Condividi tramite


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à sottoposta a query.

Parametri

source
IQueryable<TEntity>

Query di origine.

Restituisce

IQueryable<TEntity>

Nuova query in cui verranno caricate le raccolte 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, ciò può comportare risultati incoerenti quando si verificano aggiornamenti simultanei. Le transazioni serializzabili o snapshot possono essere usate per attenuare questa operazione e ottenere coerenza con le query suddivise, ma ciò può portare altri costi di prestazioni e differenza comportamentale.

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

Per altre informazioni ed esempi, vedere query di suddivisione di EF Core .

Si applica a