C#中的SQL查询(Linq)

我在我的C#文件中有这个查询,它工作正常:
from var in db.database_1
where var.database_2.primarycat.Length > 0 && var.meditype.Contains("All")
xxx
select new XElement("id", new XElement("temp", var.database_2.name)
现在,我想在xxx的where参数中插入此查询:
AND name IN (
SELECT primarycat
from database_2
GROUP BY primarycat
HAVING COUNT(*) > 1)
有人能帮助我吗?
解决方法:
一个简单的子查询应该这样做:
from var in db.database_1
where var.database_2.primarycat.Length > 0
&& var.meditype.Contains("All")
&& (from cat in db.database_2
group cat by cat.primarycat into g
where g.Count() > 1
select g.Key).Contains(var.name)
select new XElement("id", new XElement("temp", var.database_2.name)