当尝试使用此代码限制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

10-07 12:51
查看更多