Agrupación por múltiples columnas con LINQ en C#
¡Hola a todos! Soy nuevo en C# y LINQ, y me encontré con un problema al agrupar datos. Tengo una lista de pedidos (List), donde cada pedido contiene los campos: CustomerId, ProductId, Quantity y Price. Necesito agrupar los pedidos por dos campos al mismo tiempo — por CustomerId y ProductId — para obtener la cantidad total y la suma para cada cliente y producto.
Aquí está mi clase:
```csharp
public class Order
{
public int CustomerId { get; set; }
public int ProductId { get; set; }
public int Quantity { get; set; }
public decimal Price { get; set; }
}
```
He intentado usar GroupBy con un solo campo, por ejemplo:
```csharp
var grouped = orders.GroupBy(o => o.CustomerId);
```
Esto funciona, pero necesito agrupar por dos campos a la vez. He leído que se puede usar un tipo anónimo, pero no entiendo cómo acceder luego a la key y cómo sumar correctamente Quantity y Price en cada grupo. Indíquenme cómo escribir correctamente una consulta LINQ para agrupar por Customer
No answers yet.
Inicia sesión para dejar una respuesta