比较where子句中的日期部分
本文关键字:日期部 where 子句 比较 | 更新日期: 2023-09-27 18:15:14
当尝试使用以下代码约束where语句仅比较datetime字段的日期部分时,
var list = products.Where(x => ((DateTime)x.PurchaseDate).Date >= dt_SelectDate.Value.Date);
我使用(DateTime)
转换,因为EF不能识别.GetValueOrDefault()
,并且PurchaseDate
字段是可空的。
得到的错误是
在LINQ to Entities中不支持指定的类型成员'Date'。只支持初始化式、实体成员和实体导航属性。
我认为你需要的EntityFunctions。TruncateTime方法来比较(只是)日期。
MSDN描述如下:http://msdn.microsoft.com/en-us/library/dd395596.aspx