从Linq获取最小日期时间

时间:2016-10-21 13:09:14

标签: linq

如何将此linq查询转换为单行?

var closets = (from v in options
               select v.ExceriseDate).Min();

var option = options.Where(v => v.ExceriseDate == closets).Single();

return option;

1 个答案:

答案 0 :(得分:1)

像这样:

options.OrderBy(v => v.ExceriseDate).First();

我还要补充一点,除非您能保证它是唯一的,否则您不想使用Single()。如果存在多个异常,它将抛出异常。如果两个对象共享相同的ExceriseDate,则会发生这种情况。最后,如果您更喜欢Linq的查询语法而不是表达式方法:

var option = (from v in options
              orderby v.ExceriseDate
              select v).First();