RelationalQueryableExtensions.AsSplitQuery<TEntity> Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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
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 .