Lorsque vous utilisez le noyau du cadre d'entité, vous pouvez rencontrer une situation qui doit être filtrée en fonction d'un attribut spécifique.
Principe de travail
Entity Framework Core 5 introduit la fonction contenant du filtre, vous permettant de spécifier le where, orderBy / orderByDesmenting, alors par le bystension, sauter et prendre les opérateurs lorsque vous incluez des données connexes.
Exemple
Considérez le code suivant:
Dans cet exemple, nous avons filtré les résultats de l'inclusion, y compris uniquement le message de l'auteur. Ceci est réalisé en appliquant les symboles opérationnels à la collection.Précautions
using (var context = new BloggingContext()) { var blogs = context.Blogs .Include(blog => blog.Posts.Where(p => p.Author == "me")) // 过滤包含 .ToList(); }
Chaque attribut de navigation ne peut appliquer qu'un seul filtre. Certaines opérations accumuleront des résultats (par exemple,
renverra les clients avec toutes les commandes).Include(c => c.Orders.Where(o => o.Name != "Foo")).Include(c => c.Orders.Where(o => o.Name == "Bar"))
Le filtre contient ne pas affecter les demandes du Seigneur (par exemple, o => o.Classification == c.Classification
La projection est négligée, qu'elle soit filtre ou unique. Include(c => c.Orders.Where(o => o.IsDeleted))
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!