Linq Getting Customers group by date and then by their type

Posted by Nitin varpe on Stack Overflow See other posts from Stack Overflow or by Nitin varpe
Published on 2013-10-31T09:45:22Z Indexed on 2013/10/31 9:53 UTC
Read the original article Hit count: 308

Filed under:
|
|

I am working on generating report for showing customer using LINQ in C#. I want to show no. of customers of each type.

There are 3 types of customer registered, guest and manager. I want to group by customers by registered date and then by type of customer. i.e If today 3 guest, 4 registered and 2 manager are inserted. and tomorrow 4,5 and 6 are registered resp. then report should show Number of customers registerd on the day . separate row for each type.

DATE        TYPEOF CUSTOMER    COUNT
31-10-2013  GUEST              3
31-10-2013  REGISTERED         4
31-10-2013  MANAGER            2
30-10-2013  GUEST              5
30-10-2013  REGISTERED         10
30-10-2013  MANAGER            3

LIKE THIS .

var subquery = from eat in _customerRepo.Table
                           group eat by new { yy = eat.CreatedOnUTC.Value.Year, mm = eat.CreatedOnUTC.Value.Month, dd = eat.CreatedOnUTC.Value.Day } into g
                           select new { Id = g.Min(x => x.Id) };




var query = from c in _customerRepo.Table
                        join cin in subquery.Distinct() on c.Id equals cin.Id
                        select c;

By above query I get minimum cutomers registerd on that day Thanks in advance

© Stack Overflow or respective owner

Related posts about c#

Related posts about asp.net-mvc-3