例如,我有一个将对象与地点相关联的多对多表
1 1
2 1
4 3
5 9
6 2
我有很多地方的不同表,并且有几个表通过外键链接到其中,例如地址簿条目和历史记录。我需要将一个集合发送到我在 MVC 中查看一个地方的所有信息,但前提是它是我的多对多表中使用的一个地方,即示例中的地方 1、3、9 和2
所以现在我做了两个查询
var places = myodataservice.Get(new QueryBuilder<MapTable>())
.Select(t => t.PlaceId)
.Distinct();
var returnable = myodataservice.Get(
new QueryBuilder<Places>(),
p => p.Address,
p => p.Address.State,
p => p.Logo
).Where(p => places.Contains(p.Id))
这既非常慢,而且似乎是一种运行查询的糟糕方式。有没有更好的方法来实现这一点,可能是一个查询?