首页 新闻 会员 周边

C#对List<>中的元素按元素多个属性进行排序展示

0
悬赏园豆:10 [已解决问题] 解决于 2017-04-10 16:33

我现在有List集合,想对list中的元素按多个属性值进行排序,用拉姆达式该如何做呐

 比如List中存人的集合,先以年龄排序,再在此基础上以职位排序,该如何做呢??谢谢啦

if (P2P_MinTransferTimes.Checked) { allServiceRoutes = allServiceRoutes.OrderBy(t => t.TransferTimes).ToList(); }

AnQi_安琪_小屋的主页 AnQi_安琪_小屋 | 初学一级 | 园豆:103
提问于:2017-04-10 15:20
< >
分享
最佳答案
1

有个thenby函数的应该:

if (P2P_MinTransferTimes.Checked) { allServiceRoutes = allServiceRoutes.OrderBy(t => t.TransferTimes).ThenBy(t.Position).ToList(); }

收获园豆:7
codingHeart | 小虾三级 |园豆:1511 | 2017-04-10 15:53

谢谢你啦 解决 (*  ̄3)(ε ̄ *)

AnQi_安琪_小屋 | 园豆:103 (初学一级) | 2017-04-10 16:32

@Ada萌萌的师姐: 果然萌萌哒~,~

codingHeart | 园豆:1511 (小虾三级) | 2017-04-10 16:34

@codingHeart: O(∩_∩)O哈哈哈~

AnQi_安琪_小屋 | 园豆:103 (初学一级) | 2017-04-10 16:35
其他回答(3)
1

IENumerable提供的排序不支持多个字段。建议用Linq

 

list=(from item in list orderby item.字段1 ascending,item.字段2 descending select item).ToList();

 

 

龙葛格 | 园豆:782 (小虾三级) | 2017-04-10 15:45

嗯嗯 有时间学习啦

支持(0) 反对(0) AnQi_安琪_小屋 | 园豆:103 (初学一级) | 2017-04-10 16:34
1

OrderBy(t=>t.Id).ThenBy(t=>t.Age)

收获园豆:3
liuxb1991 | 园豆:661 (小虾三级) | 2017-04-10 15:51

谢谢O(∩_∩)O谢谢

支持(0) 反对(0) AnQi_安琪_小屋 | 园豆:103 (初学一级) | 2017-04-10 16:34
0

OrderBy(t=>t.Age).ThenBy(t=>t.Id)

意思是先照年龄排序.再按id排序.

吴瑞祥 | 园豆:29449 (高人七级) | 2017-04-10 16:18

按元素中的多个属性呢

支持(0) 反对(0) AnQi_安琪_小屋 | 园豆:103 (初学一级) | 2017-04-10 16:34
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册