У меня есть запрос Linq, который упорядочивает по datetimeoffest. Цель состоит в том, чтобы на верхнем месте был тот, который имеет значение NULL, за ним следовали самые последние, вторые и т. Д. Я начал с этого.
orderby item.Date descending
Делая это так, NULL идут ко дну. Поэтому я изменил это на это.
orderby (item.Date.HasValue ? item.Date.Value.Ticks : long.MaxValue) descending
Это работает в запросах памяти, но не переводится в SQL. Моя последняя попытка такая.
orderby (item.Date.HasValue ? item.Date : new DateTimeOffset(new DateTime(9999, 09, 31))) descending
Проблема в том, что максимальное значение datetimeoffset не одинаково для SQL и C #. Я чувствую, что упускаю очевидное простое решение.
Любой ввод?