我的sql表中有一个名为“CreatedDate”的DateTime类型列,并使用我的asp.net应用程序中的“DateTime.Now”传递此列的值....
我的CreatedDate列中的数据是,
CreatedDate
-----------
2012-05-07 18:56:17.487
2012-05-07 18:56:28.443
2012-05-07 19:21:24.497
2012-05-14 15:22:04.587
我需要使用此CreatedDate
获取数据。
在我的实体框架中,我尝试了像
这样的条件DataAccess.Entities dataEntities = new DataAccess.Entities();
DataAccess.Employee employee = dataEntities.Employees
.First(e => e.CreatedDate == DateTime.Today);
像这样,我有这个日期的数据(2012-05-14),但是这里的mininutes部分不同(the DateTime.Today gives '2012-05-14 12:00:000' like this)
,它显示错误,例如,sequence不包含任何元素....
我怎样才能比较Linq中的'日期'.....任何人都可以帮助我,,,
答案 0 :(得分:2)
使用DateTime对象上的Date
属性
CreatedDate.Date==DateTime.Today
所以你的代码将是
DataAccess.Employee employee=dataEntities.
Employees.First(e=>e.CreatedDate.Date==DateTime.Today);
Date
属性返回Date
对象的DateTime
组件,并将时间值设置为12:00:00 midnight (00:00:00)
。
答案 1 :(得分:1)
试试这个:
DataAccess.Employee employee =
dataEntities.Employees.First(e=>e.CreatedDate.Date==DateTime.Today)
答案 2 :(得分:0)
我刚宣布了两个变量,如
DateTime date1=DateTime.Now.Date;
DateTime date2=DateTime.Now.Date.AddDays(1);
并且在条件下我使用了这些变量,如
DataAccess.Employee employee = dataEntities.Employees
.First(e => e.CreatedDate >= date1
&& e.CreatedDate < date2);
它的工作......