public List <TurnoverPerGenre> TurnoverPerGenre() { List <TurnoverPerGenre> turnoverPerGenre = new List <TurnoverPerGenre>(); List <int> ls = new List <int>(); foreach (var order in orepository.Orders) { foreach (var cartline in order.Lines) { for (int i = 0; i < cartline.Quantity; i++) { ls.Add(cartline.Game.ID); } } } var GenreTotalCost = from Game in repository.Games where ls.Contains(Game.ID) group Game by Game.Genre into GameGroup select new { Genre = GameGroup.Key, TotalProfit = GameGroup.Sum(x => x.PriceFinal), }; foreach (var s in GenreTotalCost) { turnoverPerGenre.Add(new TurnoverPerGenre { Genre = s.Genre, TotalProfit = Convert.ToDouble(s.TotalProfit) }); } return(turnoverPerGenre); }
//take in list of bo public long Total(List <CalculationBO> calculation) { long value = (from Game in calculation group Game by Game.GameId into GameGroup orderby GameGroup.Sum(g => g.Price) descending select GameGroup.Key).FirstOrDefault(); return(value); }