-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

o[0]GroupBy拳を使用すると、グループ化された結果が得られます。グループ化された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 に答える