1

我有这个相当简单的 SQL 查询:

SELECT i.IdItem
FROM Item i
INNER JOIN Size s ON i.IdItem = s.IdItem
WHERE s.Width > 0 AND s.Width < 100

...我一直试图将其转换为 LINQ 到实体,但无济于事。

到目前为止,这就是我想出的:

context.Items.Where(i => i.Sizes.Where(s => s.Width > 0 && s.Width < 100))

我的(上下文)中有一个DbSet项目DatabaseContext和大小,我的Item实体有一个Sizes导航属性。

这不编译,给我一个Cannot implicitly convert type 'System.Collections.Generic.IEnumerable' to 'bool'错误。我有一种感觉,我在这里遗漏了一些非常明显的东西。

4

1 回答 1

8
context.Items.Where(i => i.Sizes.Any(s => s.Width > 0 && s.Width < 100))

Where给你一个IEnumerable不能用作条件的

于 2012-12-07T19:50:39.110 回答