编写linq查询以获取所选名称计数

时间:2013-07-24 11:54:46

标签: c# .net linq c#-4.0

这里我需要得到名字Murugan的总数,我的输出应为“2”。如何为那个

编写Linq查询

的LINQ:

Person[] names = {new Person { Name = "Murugan", Money = 15000 },
                                 new Person{Name="Vel",Money=17000},
                                 new Person{Name="Murugan",Money=1000},
                                  new Person{Name="Subramani",Money=18000},
                                 new Person{Name="Vel",Money=2500}};
var result = from val in names
         where val.Name == "Murugan" 
         select val;
Console.WriteLine(result);
Console.ReadLine();

5 个答案:

答案 0 :(得分:11)

试试这个:

var count = names.Count(x=>x.Name=="Murugan");

答案 1 :(得分:6)

你可以使用它,

var result = (from val in names
                          where val.Name == "Murugan"
                          select val).Count();

答案 2 :(得分:4)

你可以用这个:

  var result = from val in names
               where val.Name == "Murugan"
               group val by val.Name into g
               select new { Count = g.Count()                   
               };

答案 3 :(得分:2)

尝试:

Person[] names = { new Person { Name = "Murugan", Money = 15000 },
                   new Person{Name="Vel",Money=17000},
                   new Person{Name="Murugan",Money=1000},
                   new Person{Name="Subramani",Money=18000},
                   new Person{Name="Vel",Money=2500} };

var result = (from val in names
              where val.Name == "Murugan"
              select val).ToList();

Console.WriteLine(result.Count);
Console.ReadLine();

答案 4 :(得分:1)

var result = (from val in names
                         where val.Name == "Murugan"
                         select val).Count ();

linq返回IEnumerable,其中包含Count()