C#中list型数据如何用groupby()和select()进行筛选

墨雪子竹 2014-06-03 03:22:40
现有这么一个list型数据
list1其中包含name,age,sex三个字段的数据
如何用groupby()和select()得到name这个字段中唯一的那些值

声明,name中有重复的数据
...全文
21468 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
kitinglei 2014-06-03
  • 打赏
  • 举报
回复
List<IGrouping<string, ReceiveDataModel>> group = list1.groupby(r=>r.name) 然后再循环group简单多了,干嘛想一步到位
墨雪子竹 2014-06-03
  • 打赏
  • 举报
回复
引用 6 楼 smthgdin 的回复:
var q = from p in list1 group p by p.name into g where g.Count() = 1 select new { g.Key, ProductCount = g.Count() }; 比如这样子,然后,key.name就可以。 如果不想用key就不要使用匿名。
这是什么语言?看不懂耶。.net如果groupby()如果里面只有一个字段的话,后面的key是.不出来name的吧
墨雪子竹 2014-06-03
  • 打赏
  • 举报
回复
引用 7 楼 duanzi_peng 的回复:
你的 唯一的那值 可不是使用Distinct去掉重复的。
我就是用groupby()做一个筛选,不过不如Distinct方便
exception92 2014-06-03
  • 打赏
  • 举报
回复
你的 唯一的那值 可不是使用Distinct去掉重复的。
smthgdin_020 2014-06-03
  • 打赏
  • 举报
回复
var q = from p in list1 group p by p.name into g where g.Count() = 1 select new { g.Key, ProductCount = g.Count() }; 比如这样子,然后,key.name就可以。 如果不想用key就不要使用匿名。
墨雪子竹 2014-06-03
  • 打赏
  • 举报
回复
list1.groupby(r=>r.name).select (g=>g.key).tolist(); 这样果真是可以的,我再去试试Distinct
欢乐的小猪 2014-06-03
  • 打赏
  • 举报
回复
Distinct
呱呱_瓜瓜 2014-06-03
  • 打赏
  • 举报
回复
.Select(x=>x.Name).Distinct() 不知道理解的对不对
墨雪子竹 2014-06-03
  • 打赏
  • 举报
回复
不要沉啊
墨雪子竹 2014-06-03
  • 打赏
  • 举报
回复
求大神支招 list1.groupby(r=>r.name).select (g=>g.key).tolist(); 这样有错,求解

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧