如何使用实体框架在两个日期之间搜索记录?

时间:2018-04-19 10:35:38

标签: c# entity-framework

我想使用实体框架在两个日期之间获取剩余数据。

喜欢这个Sql Query;

SELECT * FROM TABLE WHERE DATE BETWEEN STARTDATE AND ENDDATE

我尝试了以下linq;

DateTime startDateTime=bla;
DateTime endDateTime=blabla;

var dateList = db.MachineProductionInfoes.Where(x => x.ShiftStamp.EventDate > startDateTime.Date && x.ShiftStamp.EventDate < endDateTime.Date)).Select(i => i.ShiftStamp.EventDate + i.ShiftStamp.ShiftDefinition.ShiftStartTime).ToList();

但是这个linq表达式引发了异常:

  

DbArithmeticExpression参数必须具有数字公共类型。

我在stackoverflow中看到了答案&#34; Entity Framework 6及更早版本不支持使用DateTime进行算术运算。你必须使用DbFunctions *。&#34;但我不知道如何使用DbFunctions。

0 个答案:

没有答案