C# 如何按嵌套的IEnumerable对象对IEnumerable对象进行排序?

C# 如何按嵌套的IEnumerable对象对IEnumerable对象进行排序?,c#,linq,C#,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}},

可能重复:

我有这个收藏:

    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}}
    };
IEnumerable sam=新列表()
{
新样本{id=1,name=“样本1”,list=newlist{5,6,1},
新样本{id=2,name=“样本1”,list=newlist{2,9},
新样本{id=3,name=“样本1”,list=newlist{8,3,7},
新样本{id=4,name=“样本1”,list=newlist{8,4,3},
新样本{id=5,name=“样本1”,list=newlist{5,1,7},
新样本{id=6,name=“样本1”,list=newlist{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}},
newsample{id=2,name=“sample 1”,list=newlist{2,9},
新样本{id=5,name=“样本1”,list=newlist{5,1,7},
新样本{id=1,name=“样本1”,list=newlist{5,6,1},
新样本{id=6,name=“样本1”,list=newlist{6,9,7}
新样本{id=3,name=“样本1”,list=newlist{8,3,7},
新样本{id=4,name=“样本1”,list=newlist{8,4,3},
顺便说一下,这是按“列表”排序的


谢谢

这是通过
列表
属性的第一项订购的LINQ
sam
(我想这就是您想要的,对吧?)

IEnumerable orderedSam=sam.OrderBy(item=>item.list.FirstOrDefault());

将运算符更改为
FirstOrDefault()
应防止按空列表排序时出现异常。是的,类似这样的情况。。。谢谢你做作业??也在
IEnumerable<sample> orderedSam = sam.OrderBy(item => item.list.FirstOrDefault());