C#之Linq用法
众所周知,Linq极大的提高了开发的效率,提高了代码的简洁程度,不过呢,Linq也是一把双刃剑,代码的易读性呢又有点尴尬哈,尽管如此,它还是备受程序员青睐。
1、Linq——Group By
先定一个类,以便用来按照其中的某个字段进行分组。
class User { public int Id { get; set; } public string Name { get; set; } public string Num { get; set; } }
接下来使用group by 进行分组
List<User> list = new List<User>{ new User() { Id = 1, Name = "123",Num="qqq" }, new User() { Id = 2, Name = "456",Num="qqq" }, new User() { Id = 3, Name = "789",Num="qqq" } }; var temp = from f in list group f by f.Num into g select new { name = g.Key, count = g.Count(r => r.Id > 0) }; string s = ""; int i = 0; foreach (var item in temp) { s = item.name; i = item.count; } Console.WriteLine(s + " " + i.ToString()); Console.ReadLine();
将list按照其 Num属性进行分组,其中 g.Key就是Num的值 "qqq" ,g.Count()就是该组的元素的数量。
以上结果是: qqq3
浙公网安备 33010602011771号