C# Lambda 分组排序问题(先对数据进行时间倒序排列,然后再按照某字符分组,在每个分组内再按照某数字或字符正序排列)
问题:先对数据进行时间倒序排列,然后再按照某字符分组,在每个分组内再按照某数字或字符正序排列
解答:
var data=list.OrderByDescending(i => i.Date).ToList();
var gData = data.GroupBy(g => g.code).Select(l => l.OrderBy(i => i.Step)); var invData = new List<IndexVM>(); foreach(var m in gData) { invData.AddRange(m); }
这里有三个注意点:
1、先对数据进行倒序排列,然后一定要ToList(),让序列形成新的内存数据固定下来;
2、然后对上面的数据进行分组,并对分组内序列按照某字段进行正序排列;
3、最后再把每个已经正序排列的数据进行重新组合成一个新序列,在某些地方这一步很重要。
微信号:jamesworkshop 学习QQ群:364976091
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了