Disculpas por el título terrible, no estaba muy seguro de cómo expresar mi problema.LINQ agrupando datos dos veces
Tengo un objeto que se parece a:
CustAcct cust = new CustAcct();
cust.Name = "John Doe";
cust.Account = "ABC123";
cust.OrderTotal = 123.43
cust.OrderQty = 4;
cust.TransDate = "12/26/2010 13:00"
por favor no pasan demasiado tiempo criticando la siguiente parte porque esto realmente no se trata de un carrito de la compra/Cliente cosas, pero la idea es la lo mismo, solo quería usar algo con lo que todo el mundo esté bastante familiarizado.
Una cuenta puede tener más de un cliente y un cliente puede tener más de una cuenta.
Por lo que tiene:
List<CustAcct> custList = new List<CustAcct>();
custList.Add("John Doe", "ABC123", 123.43, 4, "12/26/2010 13:00");
custList.Add("John Doe", "ABC123", 32.12, 2, "12/27/2010 10:00");
custList.Add("John Doe", "ABC321", 43.34, 1, "12/28/2010 15:00");
custList.Add("John Doe", "ABC321", 54.60, 3, "12/28/2010 16:00");
custList.Add("Jane Zoe", "ABC123", 46.45, 2, "12/28/2010 17:00");
custList.Add("Jane Zoe", "ABC123", 32.65, 1, "12/29/2010 12:00");
custList.Add("Jane Zoe", "ABC321", 67.65, 3, "12/29/2010 23:00");
custList.Add("Jane Zoe", "ABC321", 75.34, 4, "12/30/2010 08:00");
Lo que me gustaría hacer es obtener la suma de todos OrderTotal y OrderQty para cada cuenta y cliente por lo que mi salida se verá así:
Account Customer OrderTotal OrderQty
ABC123 John Doe 155.55 6
ABC321 John Doe 97.94 4
ABC123 Jane Zoe 79.10 3
ABC321 Jane Zoe 142.99 7
I He pasado por mi libro LINQ to Objects y 101 muestras LINQ y no puedo entender cómo conseguir esto. Gracias.
¿Está utilizando la sintaxis del método o la sintaxis de la consulta? –
Estoy usando la sintaxis de la consulta. de c en CustList ... – Stephen
¿Desea agrupar por el combo cuenta/cliente? ¿O solo grupo por cliente, luego por cuenta? Diferencia sutil, pero afecta mi respuesta ... –