问题:先对数据进行时间倒序排列,然后再按照某字符分组,在每个分组内再按照某数字或字符正序排列
解答:
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、最后再把每个已经正序排列的数据进行重新组合成一个新序列,在某些地方这一步很重要。