【发布时间】:2013-01-09 14:21:31
【问题描述】:
需要在实体框架中选择数据,但需要过滤子孙
我有 4 张桌子。 Parent -> Child -> GrandChild -> GreatGrandChild我想返回所有的父母,但过滤孩子和曾孙。
换句话说(例如)
SELECT Parent.*
FROM Parent
INNER JOIN Child
INNER JOIN Grandchild
INNER JOIN GreatGrandChild
WHERE child.Column5 = 600 AND
GreatGrandChild.Column3 = 1000
它不能是匿名类型,因为我需要更新数据并将更改保存到数据库。
使用 vs 2010 和 EF 4.0
【问题讨论】:
-
在您的示例 sql 中,我假设应该有连接条件?即
Child.ParentID = Parent.ParentID. -
请注意重复发布。 stackoverflow.com/questions/14524030
-
是的,有加入标准,我只是为了简洁而没有把它放进去。
-
@DexterMorgan 在某些情况下,简洁可能会损害问题或导致人们认为您遗漏的概念比您的问题所暗示的要多。你要么最终得到可能不正确的假设,要么像这样评论线程:)
-
对不起,这就是我想要完成的。这些是真正的表格和真正的 SQL,它们会产生我想要的 SELECT Person.* FROM Person P INNER JOIN Plan PL ON P.PersonID = PL.PersonID INNER JOIN Coverage C on PL.PlanID = C.PlanID INNER JOIN CoveredMember CM在 C.CoverageID = CM.CoverageID WHERE CM.TermDate = NULL AND PL.PlanType = 1
标签: c# entity-framework filtering