-2

重複の可能性:
リスト内の各オブジェクトのフィールドをLINQで並べ替えます

私はこのコレクションを持っています:

    IEnumerable<sample> sam = new List<sample>()
    {
        new sample{ id = 1, name = "sample 1", list = new List<int>{5,6,1}},
        new sample{ id = 2, name = "sample 1", list = new List<int>{2,9}},
        new sample{ id = 3, name = "sample 1", list = new List<int>{8,3,7}},
        new sample{ id = 4, name = "sample 1", list = new List<int>{8,4,3}},
        new sample{ id = 5, name = "sample 1", list = new List<int>{5,1,7}},
        new sample{ id = 6, name = "sample 1", list = new List<int>{6,9,7}}
    };

LINQを使用してこれを並べ替えると、出力は次のようになります。

     new sample{ id = 2, name = "sample 1", list = new List<int>{2,9}},
     new sample{ id = 5, name = "sample 1", list = new List<int>{5,1,7}},
     new sample{ id = 1, name = "sample 1", list = new List<int>{5,6,1}},
     new sample{ id = 6, name = "sample 1", list = new List<int>{6,9,7}}
     new sample{ id = 3, name = "sample 1", list = new List<int>{8,3,7}},
     new sample{ id = 4, name = "sample 1", list = new List<int>{8,4,3}},

ちなみにこれは「リスト」でソートされています。

ありがとう

4

1 に答える 1

2

samプロパティの最初のアイテムで注文するLINQは次listのとおりです(私はあなたが求めているものを収集しますよね?):

IEnumerable<sample> orderedSam = sam.OrderBy(item => item.list.FirstOrDefault());
于 2012-09-03T02:51:39.767 に答える