private Dictionary <long, CompanySales> SummarizeSalesByCompany(List <AppSalesData> data) { Dictionary <long, CompanySales> result = new Dictionary <long, CompanySales>(); foreach (AppSalesData a in data) { if (result.ContainsKey(a.CompanyId)) { result[a.CompanyId].TotalRevenue += a.Downloads * a.Price; } else { CompanySales c = new CompanySales(a.CompanyId, (a.Downloads * a.Price), a.CompanyName, a.CompanyCountry); result.Add(c.Id, c); } } return(result); }
private void btnSummary_Click(object sender, EventArgs e) { CompanySales most = data.Values.ToList()[0], min = data.Values.ToList()[0]; double total = 0; foreach (CompanySales c in data.Values) { if (most.TotalRevenue <= c.TotalRevenue) { most = c; } if (min.TotalRevenue >= c.TotalRevenue) { min = c; } total += c.TotalRevenue; } MessageBox.Show("Bigger seller: " + most.Name + " Total " + most.TotalRevenue.ToString("C") + "\n" + "Worst seller: " + min.Name + " Total " + min.TotalRevenue.ToString("C") + "\n" + "Global revenue: " + total.ToString("C")); }