我在Products
和Categories
之间有多对多关系,我想选择EF Core 5、6中的所有相关产品(按任何共同类别)。
我可以通过在产品类别上循环然后区分它们来添加每个共有类别的所有产品,但这根本不是一个好的解决方案,我确信有一个单一的EF Linq查询可以完成这项工作。
关系是这样的:
Products - ProductInCategories - Categories
var allProducts = Product.ProductInCategories
.SelectMany(t => t.Category.ProductInCategories)
.Select(t => t.Product)
.Distinct().ToList();
这既不好也不高效,请让我知道最好的解决方案。
1条答案
按热度按时间drnojrws1#
对于选择所有相关类别的产品:
对于选择特定类别的所有产品(例如,类别ID等于1):
如果您只想选择特定产品而不显示相关类别: