近期做毕业设计 ,由于需要到统计商品的销量,而使用ef进行查询数据,话不多说,直接上代码
var result = (await _orderDetailsServices.GetAllOrderDetailsWithProductsAndOrders()).Where(n=>n.Order.OrderTime.Year==DateTime.Now.Year).OrderBy(n => n.Order.OrderTime).GroupBy(c => new { c.Order.OrderTime.Year, c.Order.OrderTime.Month }).Select(g => new YearMonthOrderQty
{
Year=g.Key.Year,
Month = g.Key.Month,
Qty = g.Count()
}).ToList();
return Json(new { data= result}) ;
类:YearMonthOrderQty
public class YearMonthOrderQty
{
public int Year { get; set; }
public int Month { get; set; }
public int Qty { get; set; }
}
其中,第一部分代码中_orderDetailsServices.GetAllOrderDetailsWithProductsAndOrders()这部分属于获取订单,只是一个List,不需要纠结,关键是要使用到分组,之后就实现了按月查询。