Linq distinct - Count

前端 未结 5 591
一向
一向 2020-11-29 01:16

I am looking to perform a query on an example list of objects

Date     Username

01/01/2011 james
01/01/2011 jamie
01/01/2011 alex
01/01/2011 james
02/01/201         


        
5条回答
  •  死守一世寂寞
    2020-11-29 01:44

    I realize this is an ancient question but I ran across it and saw the comment about wanting method syntax and couldn't help myself to answer it... I may have a coding disorder.

    In query syntax it looks like this... note that there is no query syntax for Distinct and Count

    from l in logins
    group l by l.Date into g
    select new
    {
        Date = g.Key,
        Count = (from l in g select l.Login).Distinct().Count() 
    };
    

    For a side by side comparison to the original method syntax (which personally I like better) here you go...

    logins
      .GroupBy(l => l.Date)
      .Select(g => new
      {
        Date = g.Key,
        Count = g.Select(l => l.Login).Distinct().Count()
      });
    

提交回复
热议问题