将原始SQL转换为实体框架的问题,按,计数排序



我有一个问题转换这个SQL查询实体框架:

SELECT Products.Name, COUNT(*) 
FROM OrdersProducts 
JOIN Products on OrdersProducts.ProductId = Products.Id 
GROUP BY Products.Id 
ORDER BY COUNT(*) DESC

努力但没有结果。我不知道如何使它工作。

如果您的实体模型关系允许,您可以尝试这样做:

dbcontext.Products
.Include(orders=> orders.OrderProducts)
.Select(x => new { Name = x.Name, Count = x.OrderProducts.Count })
.OrderByDescending(x => x.Count)
.ToList();

我认为EF生成的SQL可以接近您的查询…

最新更新