-4

我的代码:

List<string[]> records=new List<string[]>();
.....
....
#Now i has list in records
var sortedRecords = records
                    .OrderBy(o => o[0])
                    .ThenBy(t=>t[3])
                    .ToList();
.....

我想按 [0] 元素分组,按每个组中的 [3] 元素排序。我没有得到正确的输出。怎么了?

4

1 回答 1

3

您可以使用 GroupByo[0]拳头,然后它会给您分组结果。然后,您可以按每个组对项目进行d[3]排序,由于分组有序分组列表,您可以使用SelectMany方法将其展平回您期望的列表。

var sortedRecords = records
                    .GroupBy(o => o[0])
                    .Select(g => g.OrderBy(d => d[3]))
                    .SelectMany(g=>g)
                    .ToList();
于 2013-06-01T06:11:49.037 回答