在Linq中使用或之后的实体lambda表达式

时间:2011-01-28 09:22:51

标签: linq-to-entities

此查询没问题:

from a in context.employee.where(a=>a.time > sometime && a.time.addmin(60) < sometime || a.time < someothertime).

但是如果我添加()以确保并且在或之前,编译器不会识别第二个a:

from a in context.employee.where((a=>a.time > sometime && a.time.AddMinutes(60) < sometime) || a.time < someother time)).

这一次: 运营商'||'不能应用于'lambda expression'和'lambda expression'

类型的操作数

如何在linq中使用OR来实现具有和在同一where子句中的实体?

1 个答案:

答案 0 :(得分:2)

不应该是

from a in context.employee.where(a=> (a.time > sometime && a.time.AddMinutes(60) < sometime) || a.time < someother time).

注意a =&gt;在你的非工作中是在内括号内