Сортировать пустые записи в нижней части запроса LINQ - PullRequest
7 голосов
/ 02 декабря 2009

Я пытаюсь отсортировать запрос LINQ to SQL на основе двух полей. Первое поле иногда равно нулю, что автоматически сортирует в верхнюю часть восходящего запроса. Есть ли способ сделать нулевые записи сортировать в нижней части?

Вот пример:

From x in SampleDataContext.Event _
Order By x.Date, x.Sequence_Number _
Select x.Date, x.Sequence_Number

Вернется:

  • NULL, 1
  • NULL, 4
  • 12/2/09, 5
  • 12/3/09, 2
  • 12/3/09, 3

Желаемый заказ:

  • 12/2/09, 5
  • 12/3/09, 2
  • 12/3/09, 3
  • NULL, 1
  • NULL, 4

1 Ответ

15 голосов
/ 02 декабря 2009

Если это строки:

Order By (string.IsNullOrEmpty(x.Date) ? "zzzzzz" : x.Date)

Если они имеют временные значения:

Order By (x.Date ?? DateTime.MaxValue)
...