4

在这里,我需要获取名称 Murugan 我的输出应该是 "2" 的总数。如何为此编写 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();
4

5 回答 5

11

尝试这个:

var count = names.Count(x=>x.Name=="Murugan");
于 2013-07-24T11:55:32.180 回答
6

你可以用这个,

var result = (from val in names
                          where val.Name == "Murugan"
                          select val).Count();
于 2013-07-24T11:58:28.760 回答
4

你可以使用这个:

  var result = from val in names
               where val.Name == "Murugan"
               group val by val.Name into g
               select new { Count = g.Count()                   
               };
于 2013-07-24T12:00:28.950 回答
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();
于 2013-07-24T11:58:37.510 回答
1
var result = (from val in names
                         where val.Name == "Murugan"
                         select val).Count ();

linq 返回具有 Count () 的 IEnumerable

于 2013-07-24T11:59:13.617 回答