J'essaie d'additionner le coût d'une série d'articles groupés par l'organisation d'une personne. Je crois que la sommation fonctionne correctement, mais je ne vois pas mon regroupement. Les objets stockés dans rollup contiennent uniquement la valeur de la somme. Je m'attendrais à ce qu'ils aient l'organisation en plus de la somme des coûts pour cette organisation. Qu'ai-je manqué dans cette expression?En regroupant les problèmes en C# par valeur, puis en additionnant
var rollup = OrgPersonList.GroupBy(
person => person.Person.Org).Select(group =>
group.Sum(price => price.Items.Sum(item =>
item.Cost)));
les noms variables simple lettre d'un style * * choix ou un mécanisme d'enseignement pour les expressions LINQ/lambda? – ahsteele
@ahsteele: Je n'avais aucune information sur les éléments d'un OrgPersonList, donc c'était difficile de trouver un meilleur nom. Il est vrai que les noms de lettres simples sont assez pratiques dans les requêtes LINQ * si * elles sont faciles à comprendre. Dans ce cas, c'était plus pour la nécessité - je voulais être cohérent dans mes utilisations du même type (par opposition à utiliser «personne» et «prix» pour le même type d'objet). –
@Jon Existe-t-il une différence de performance entre ces options ou est-ce une question de préférence? – ahsteele