linq .select to group by c# code example
Example: C# linq group by
public class DeliverableGroupContainer
{
public Crew Crew;
public DateTime Date;
public List<Deliverable> Deliverables;
}
List<DeliverableGroupContainer> Deliveries =
Db.Deliveries
.Where(d => d.CrewId != null)
.GroupBy(d => new {d.Crew, d.Date})
.OrderBy(d => d.Key)
.Select(g => new DeliverableGroupContainer()
{
Crew = g.Key.Crew,
Date = g.Key.Date,
Deliverables = g.ToList()
})
.ToList();
//------------------------------Example----------------------------------
var drAll3 = dt.AsEnumerable().GroupBy(d => new { d.Field<DateTime>("date").Date, V = d.Field<String>("supplierArticle") })
.Select(g => new { _Date = g.Key.Date , Article = g.Key.V, Qty = g.Sum(r => r.Field<int>("quantity")) }).ToList();
DataTable dt4 = StatHellpers.LINQResultToDataTable(drAll3);