使用空值对列表进行排序

时间:2011-01-19 19:49:27

标签: c# linq sorting null

我一直在使用C#中的列表,我想知道如何轻松地排序并不总是具有特定字段值的列表。

例如,如果有一个人员列表,每个人都有一个DateOfBirth,我想对所有人进行排序,即使是那些没有特定领域的人,但我希望将这些人分开来自原始组(那些有DOB)。

我知道这可能是用LINQ完成的,但我不确定如何处理它。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:15)

我相信这样的事情会完成你想要的事情(使用LINQ),或者可能指向正确的方向:

var sortedList = listOfPeople
                 .OrderBy(p => p.DateOfBirth.HasValue)
                 .ThenBy(p => p.DateOfBirth);

如果您要查找有关同一主题的其他信息,可能需要查看以下文章:Sorting Lists with Null Values - Deborah Kurata