当试图将where语句用于仅使用此代码比较datetime字段的日期部分时,
var list = products.Where(x => ((DateTime)x.PurchaseDate).Date >= dt_SelectDate.Value.Date);
我使用(DateTime)
转换,因为EF无法识别.GetValueOrDefault()
,PurchaseDate
字段可以为空。
我得到的错误是
LINQ to Entities不支持指定的类型成员“Date”。仅支持初始化程序,实体成员和实体导航属性。
答案 0 :(得分:4)
我认为您需要使用EntityFunctions.TruncateTime方法来比较(仅)日期。
以下是MSDN说明:http://msdn.microsoft.com/en-us/library/dd395596.aspx