0

我有 5 张桌子:

  • 游戏
  • 类别
  • 游戏类别
  • 电影
  • 电影类别

GameCategory 只是 Game 和 Category 之间的关系。(多对多)MovieCategory 与电影相同。

现在我只想知道如何获取与游戏相关的所有类别。

目前我使用这个查询:

Query(c => c.Game.Count > 0).Distinct().ToList();

但是这个查询的性能很差(大约 500 毫秒),而如果我在带有 sql 管理的 sql server 中使用查询直接

SELECT category_id
FROM  [GameCategory]
Group by category_id

它需要不到 0.008 毫秒。

获得相同结果的最佳 lambda 表达式查询是什么?

(使用实体框架我无法直接访问 GameCategory,因为它被框架隐藏了)

需要你的帮助

谢谢

4

1 回答 1

0

我找到了解决方案:

考虑使用 Query(c => c.Game.Any()).Distinct().ToList(); 而不是 Query(c => c.Game.Count > 0).Di​​stinct().ToList();

于 2012-11-28T14:45:07.437 回答