【发布时间】:2011-06-06 10:55:06
【问题描述】:
我有点被我遇到的问题所困扰。 其中,我的数据库中有这些表:
Product (int productId, ...otherProductInfo)
Customer (int customerId, ...otherCustomerInfo)
SoldToData ( int productId, int customerId)
我想在 MVC2 中使用实体框架获得十大畅销产品。我怎样才能做到这一点?
/////////////////////////////////////// ///////////////////////////////////////// ///////////////////////////////////////// ///////////////////////////// 按照 thekip 和 Pr0fess0rX 的建议,这是我到目前为止所做的,它似乎正在工作:
using (Entities db = new Entities())
{
var groupedProducts = (from p in db.Products
join s in db.SoldToData
on p.productId equals s.productId
group p by p.id
into ProductGroup
orderby ProductGroup.Count() descending
select ProductGroup).Take(10).ToList();
List<Products> products = new List<Products>();
products.AddRange(groupedProducts.Select(gp => gp.First()));
}
这是正确的方法吗?
【问题讨论】:
-
遵循 thekip 和 Pr0fess0rX 的建议,这就是我到目前为止所做的,它似乎正在工作:
using (Entities db = new Entities()) { var groupedProducts = (from p in db.Products join s in db.SoldToData on p.productId equals s.productId group p by p.id into ProductGroup orderby ProductGroup.Count() descending select ProductGroup).Take(10).ToList(); List<Products> products = new List<Products>(); products.AddRange(groupedProducts.Select(gp => gp.First())); }这是正确的方法吗?
标签: c# entity-framework asp.net-mvc-2