2016-03-15 894 views
0

我有一个列表,我需要按两个字段排序。我正在查找要按第一个字段排序的列表,然后,如果第一个字段中有空值,则按第二个字段排序。
我有两个字段,例如距离从时间我想要一个有两个字段的排序列表。但我想优先从时间然后距离所以我如何使用Linq排序列表?LINQ OrderBy与多个字段,也有多个条件

+0

请包括预期结果的一个例子。 “__”的含义并不十分清楚,“按第一个字段排序,然后如果第一个字段中有空字符按第二个字段排序”_。 –

+1

这是你在找什么? http://stackoverflow.com/questions/298725/multiple-order-by-in-linq – RobotG0d

回答

3

您可以使用许多排序依据关闭这样的:

from user in users 
orderby user.Name, user.Age, user.Name.Length 
select user; 

或者你也可以做这样的事情:

OrderBy(<sort 1>).ThenBy(<sort 2>)