假设A为具有属性ID(int)和Status(Bool)的对象模型 和B作为对象模型也有ID(int)和Status(Bool)
我想要从A过滤它的数据属性。如果它是一个像SQL查询
"select * from A where A.Status=True and A.ID in (Select ID from B Where B.Status=True)
,
我现在不知道怎么做var C =那个查询..
var c = A.Where(a=>a.Status==True && a.ID .....)
我不知道如何申请" in
"这里
我真的很擅长使用C#Entity Framework。
答案 0 :(得分:2)
如果A和B有某种关系并且由名为AB的导航属性表示,那么查询可以像这样简单:
var c = A.Where(a=>a.Status && a.AB.Status);
如果他们没有任何关系,那么你也可以像这样直接查询(虽然表现不如上面那样):
var c = A.Where(a=>a.Status && B.Where(b=>b.Status).Any(b=>b.ID == a.ID))