1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| // pas besoin de mettre la class Produit c'est juste une représentation de l'exemple.
public List<Produit> prods = new List<Produit>();
prods.Add(new Produit("Blanc", "Liquide", "Lait", 50));
prods.Add(new Produit("Blanc", "Liquide", "Pastis", 100));
prods.Add(new Produit("Blanc", "Solide", "glace", 200));
prods.Add(new Produit("Noir", "Gaz", "Charbon", 50));
prods.Add(new Produit("Noir", "Gaz", "pétrol", 30));
prods.Add(new Produit("Noir", "Solide", "réglisse", 100));
string ret = "";
var sums = from prod in prods
group prod by new { prod.Cate1, prod.Cate2 }
into prodsum
select new {
prodsum.Key.Cate1,
prodsum.Key.Cate2,
Somme = prodsum.Sum(prod => prod.Valeur)
};
foreach (var p in sums)
ret += p.Cate1 + " - " + p.Cate2 + " - " + p.Somme + "\r\n"; |
Partager