1. 程式人生 > >一句簡單的linq group by 語句

一句簡單的linq group by 語句

拼接篩選條件

 // 拼接條件
            Expression<Func<ProductLangDailySummaryDetail, bool>> whereCondition = p => 1 == 1;
            if (dateTimeStart != null) whereCondition = whereCondition.And(m => m.SummaryDate >= dateTimeStart);
            if (dateTimeEnd != null) whereCondition = whereCondition.And(m => m.SummaryDate <= dateTimeEnd);

通過ProductType和Language分組,得到分組後的物件列表      


            var ProductLangDailySummaryDetailGroup = _productLangDailySummaryDetailRepository.Query().Where(whereCondition).GroupBy(x => new
            {
                x.ProductType,
                x.Language
            }).Select(m => new
{ ProductType = m.Key.ProductType, Language = m.Key.Language, Count = m.Count() }).ToList();