Linq to Entity从DateTime获取日期

var islemList =(来自entities中的isl .Islemler,其中( isl.KayitTarihi.Date > = dbas && isl.KayitTarihi.Value.Date <= dbit)select isl);

它给出了错误:LINQ to Entities不支持日期…如何在linq中获取日期。

使用EntityFunctions.TruncateTime

如果KayitTarihi是DB中的日期列(并且dbas和dbit是DateTime),请使用:

 var islemList = (from isl in entities.Islemler where (isl.KayitTarihi >= dbas && isl.KayitTarihi <= dbit) select isl); 

Linq to Entities不支持.Date属性(尽管Linq的其他实现可能支持它)。

我意识到你只想比较日期,但如果dbas和dbit值是时间00:00:00的日期时间,则比较日期时间没有真正的问题。 您可能必须抵消日期或使用其他不等式检查来获得适当的间隔,但比较将按预期工作。

我个人会选择Jandek的解决方案。