4

我在我的 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)

有人可以帮助我吗?

4

2 回答 2

5

A simple sub query should do this:

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)
于 2013-01-09T15:14:09.700 回答
1

使用子选择。看看这个回答几乎相同的问题的线程。

如何在 LINQ 中进行子查询

于 2013-01-09T15:11:10.497 回答