我有多对多关系(Sites,Categories,CategoriesXSite)和两个可以定义的可变定义变量:
IQueryable<Site> sitesQuery = from s in db.Sites
where s.Name.Contains(siteWord)
select s
IQueryable<SiteCategorie> categoriesQuery = from c in db.SiteCategories
where c.Parent.ID == 1
select c;
我希望能够根据可查询的网站将过滤器应用于iqueryable类别,以便我可以使用任何过滤器以及包含某些过滤器的网站的类别的另一个过滤器,这样的一些事情:
from c in categoriesQuery
where c.Sites == sitesQuery
select c
我之前也提出过类似的问题,因为我不需要过滤类别(here)
非常感谢,
答案 0 :(得分:6)
你可能想要
from c in categoriesQuery
where c.Sites.Any(s => sitesQuery.Contains(s))
select c
或
from c in categoriesQuery
where c.Sites.All(s => sitesQuery.Contains(s))
select c
取决于您的使用案例。