订购日期时间为空的LINQ to SQL中(Ordering nullable DateTime i

2019-07-29 23:50发布

我一直在使用LINQ to SQL中的一个项目IM工作的开始,我有日期时间字段订货时碰到一个问题,但是自从日期时间允许空值的空都上来了小于实际的日期在那里。

所以我非常想约会的那些是在顶部(订购两种方式),那么所有的人,没有设定日期。

jobList = from ju in context.Job_Users_Assigned
          where ju.UserID == user.ID
          select ju.Job;
return jobList.OrderByDescending(j => j.EndDate);

Answer 1:

这是一个黑客位的,但它似乎与LINQ到工作到SQL:

return from ju in context.Job_Users_Assigned
          where ju.UserID == user.ID
          orderby ju.Created ?? DateTime.MaxValue descending;

因此,当实际的“创造”价值是零,我代最大可能的日期时间值。 这将会把所有的空值排在首位。

另一种方法是通过日期字段是否具有价值订购。 这工作太:

return from ju in context.Job_Users_Assigned
          where ju.UserID == user.ID
          orderby ju.Created.HasValue descending
          orderby ju.Created descending;


文章来源: Ordering nullable DateTime in Linq to SQL