2
我已经建立了基于第三个表的多对多关系,第三个表只保存一对关键值。现在我想要做一个查询,将左侧的右侧表格键值分组而不需要其他数据。从EF协会只提取关键值
LeftTable { LeftID, LeftField1, LeftField2 }
JoinTable { LeftID, RightID}
RightTable { RightID, RightField1, RightField2 }
有什么办法基本上只是查询JoinTable,并得到所有的“RightIDs”由“LeftIDs”没有SQL试图获取从两边的领域进行分组? JoinTable在模型中不是一个实体,而是映射到关联。
我已经使用ObjectQuery和EntityCommand(ESQL)进行了一些实验,并且通过加入到我不需要的RightTable中,两者似乎仍然在其他字段中加载。
我ESQL看起来像:
SELECT lt.LeftID, (SELECT rt.RightID
FROM NAVIGATE(lt, MyModel.LeftToRightAssoc, RightTable) as rt)
FROM MyEntities.LeftTable as lt;
但是生成的SQL在RightField1和RightField2仍然获取。
当然,必须有一个更简单的方法来做到这一点?