我想对s的List元素数进行排序IGrouping.
就是这样,理想情况下列表应该是相同的.我会妥协一个新的列表,但那么元素应该是完全相同的原始对象,而不是副本(无论多浅),绝对不是匿名对象.
具体来说:我们有一个具有许多属性的实体,以及这种类型的对象列表.我们希望(1)通过某些属性(名称,地址,...)对对象进行分组,然后(2)计算每个组中元素的数量.最后,我们希望(3)通过首先放置属于较大组的元素,根据这些计数对列表进行重新排序.
注意:我们的主要问题是我们似乎无法找到一种方法来保持对组元素中原始对象的引用.实际上,我们可以在Linq查询中选择的是分组键(或键的属性),并且没有任何其他内容IGrouping.我们无法弄清楚如何将组元素与列表元素相关联,而不是查看数据(即便如此,我们还需要主键,我们无法将其添加到分组键或它会打败分组开始的目的).
var mySortedList = myList.GroupBy(x => x.Name).OrderByDescending(g => g.Count())
.SelectMany(x => x).ToList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6117 次 |
| 最近记录: |