从查询中选择DateTime

时间:2011-05-09 07:27:24

标签: linq-to-sql datetime ienumerable

我有以下linq to sql查询:

 DateTime linqdate = (from de in dvlist
                                  where de.DataValue == value
                                  select de.DateTime);

我想在datetime变量中获取日期值表单数据库但是我收到以下错误:

  

无法隐式转换类型   ' System.Collections.Generic.IEnumerable'   到' System.DateTime'

问题出在哪里?提前谢谢

1 个答案:

答案 0 :(得分:1)

Linq查询返回您可以迭代的IEnumerable<T>,或者您可以将其转换为另一种类型的对象(使用某些扩展方法)

为了得到你想要的东西你应该做这样的事情:

var dateTime=(from de in dvlist 
              where de.DataValue == value 
              select de.DateTime).FirstOrDefault();

这样,如果查询中没有匹配项,则返回可枚举对象的第一个元素,或者该类型的默认值(T,在本例中为DateTime)。