Partager via


RelationalQueryableExtensions.AsSplitQuery<TEntity> Méthode

Définition

Retourne une nouvelle requête qui est configurée pour charger les collections dans les résultats de la requête via des requêtes de base de données distinctes.

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)

Paramètres de type

TEntity

Type d’entité interrogée.

Paramètres

source
IQueryable<TEntity>

Requête source

Retours

IQueryable<TEntity>

Nouvelle requête dans laquelle les collections seront chargées via des requêtes de base de données distinctes.

Remarques

Ce comportement peut améliorer considérablement les performances lorsque la requête charge plusieurs collections. Toutefois, étant donné que des requêtes distinctes sont utilisées, cela peut entraîner des résultats incohérents lorsque des mises à jour simultanées se produisent. Les transactions sérialisables ou instantané peuvent être utilisées pour atténuer ce problème et obtenir une cohérence avec des requêtes fractionnées, mais cela peut entraîner d’autres coûts de performances et des différences de comportement.

Le comportement de fractionnement des requêtes par défaut pour les requêtes peut être contrôlé par UseQuerySplittingBehavior(QuerySplittingBehavior).

Pour plus d’informations et d’exemples, consultez Requêtes fractionnées EF Core .

S’applique à