1
我想知道如何在LINQ中定义一个相关子查询来访问我数据库中的两个表。尝试在Linq中定义子查询时遇到问题
我打算做的是在LINQ
select * from Value
where CyberEntityID IN (select CyberEntityID from CyberEntity where
datetimevalue >= '2017-05-04 17:11:32.960' and
datetimevalue <= '2017-05-04 17:11:33.035')
在我的代码创建下面的查询我有以下查询
var query = dc.Values.Where(h => h.CyberEntityID == dc.CyberEntities
.Where(d => d.datetimevalue >= sd && d.datetimevalue <= ed)
.Select(d => d.CyberEntityID)).ToList();
但是我收到一个错误说
运算符==不能应用于int和IQueryable类型
。
我在做什么错?
Can h e有一个'First()'而不是? –
这不仅仅是从CyberEntity表中返回一行吗?在我的数据库中,我有3行用于示例中给出的日期范围。对于这3行中的每一行,我都想选择所有相关的值(在我的例子中为50 * 3)。我想过使用FirstOrDefault(),但我不知道我是否会得到150或50个值(在这个例子中)。 –
@DiogoMartinho在这种情况下使用'Contains'方法。检查我更新的答案。 –