RelationalQueryableExtensions.AsSplitQuery<TEntity> Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
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 .