IQueryable IGrouping how to work

kusanagi picture kusanagi · Mar 19, 2010 · Viewed 8k times · Source

i return such type IQueryable< IGrouping<int, Invoice>> List() how can i work with it? like with generic List<Invoice> ?

Answer

AxelEckenberger picture AxelEckenberger · Mar 19, 2010

No, you have a IGrouping<int, Invoice> as your list member.

Each grouping has a Key property allowing you access to the key of the group and an IEnumerable<Invoice> containing the grouped Invoices.

So to access it ...

IQueryable< IGrouping<int, Invoice>> List() groupedIvoices = //... get your grouping
foreach (var group in groupedIvoices ) {
    var key = group.Key;
    var invoicesInGroup = group.ToList();
}

Look at 101 Linq Samples for samples and explanations for the different Linq functions.