假设我有一个查询,我必须选择特定的产品。
我有一个名为recipe的类,它具有关于使用的ingridients的无数。
首先,我想拍摄所有未删除的信息,这很容易:
var recipes = context.Recipes.Where(a=> !a.Deleted);
现在我想通过枚举来选择含水的例子。哪个会是这样的
recipes = recipes.Where(a => a.Ingridients.Where(b => b.Name == "Water"));
但这就是问题所在。知道如何解决这个问题吗?
答案 0 :(得分:6)
在子查询中使用Any
代替Where
:
recipes = recipes.Where(a => a.Ingredients.Any(b => b.Name == "Water"));
它将返回包含Water
作为其中一种成分的所有食谱。