Optimisation de la récupération des données dans EF Core 5 Utilisation de filtré inclut
Entité Framework Core 5 améliore l'efficacité de chargement des données avec les instructions filtrées Include
. Cela permet une récupération sélective des données pendant la requête initiale, minimisant le transfert de données inutile.
Fonctionnalité
Plusieurs opérations de filtre sont prises en charge dans Include
Instructions:
Where
OrderBy
/ OrderByDescending
ThenBy
/ ThenByDescending
Skip
Take
Exemple illustratif
Cet exemple montre le filtrage des publications basées sur l'auteur tout en les chargeant avec impatience:
<code class="language-csharp">using (var context = new BloggingContext()) { var blogs = context.Blogs .Include(blog => blog.Posts.Where(post => post.Author == "me")) .ToList(); }</code>
Considérations clés
Include
accumulent les résultats. Gestion des relations
Le suivi des changements d'EF Core peut ajouter des données supplémentaires à la collection en raison de la fixation des relations.
Comparaison: Filtorté Incluent le filtrage de requête Vs
Filtered Include
n'affecte pas le nombre de résultats de la requête principale. Utilisez une clause Where
sur la requête principale pour filtrer les résultats globaux.
Interaction avec les projections
Les projections ne tiennent généralement pas compte des instructions Include
. Cependant, un Include
sera appliqué si la projection comprend une entité à laquelle il est pertinent.
En comprenant ces points, les développeurs peuvent utiliser efficacement le filtré Include
pour charger et filtrer efficacement les données simultanément.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!