如果我有TableXXX(ID,Name)和TableYYY(ID,Name)和Join表XXXYYY(XXXID,YYYID),我该如何编写LINQ表达式,以便:
SELECT * FROM TableYYY
WHERE ID IN (SELECT YYYID FROM XXXYYY
WHERE XXXID IN (SELECT ID FROM TableXXX WHERE [some condition])
这也可能是这样的:
SELECT y.* FROM TableYYY y
JOIN XXXYYY j
ON j.YYYID = y.ID
JOIN XXX x
ON j.XXXID = x.ID
WHERE [condition]
但问题是,使用Telerik OpenAccess ORM,连接表XXXYYY不作为自己的表存在,而是作为TableXXX和TableYYY的一部分的List
我确信它很简单,就像 return context.TableYYY.Where(x => x.Contains(?));