如何在 C# 中使用二次排序对列表进行排序。 例如,如果我有一个名为 Student 的类,其中包含 FirstName 和 LastName 两个字段。 到目前为止,我对列表进行了如下排序:
MyStudents.Sort((s1, s2) => s1.LastName.CompareTo(s2.LastName));
我想知道如何先按姓氏然后按名字对列表进行排序。 谢谢。
最佳答案
Sort
没有这种能力。
Linq 可以简单地做到这一点:
MyStudents.OrderBy(s => s.LastName).ThenBy(s => s.FirstName)
确保您至少使用 .NET 3.5 并引用了 System.Linq
命名空间。
关于使用 lambda 表达式的 C# 二次排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14031226/