0

是否有建议的最大数量的 .Include 语句用于实体框架查询。

我想我在某个地方读到了微软推荐的不超过三个,但我找不到那个来源。

提前致谢。

4

1 回答 1

1

请参阅实体框架的性能注意事项http://msdn.microsoft.com/en-us/data/hh949853.aspx (p 8.2.2):

包含多个 Include 语句的查询通过我们的内部计划编译器生成存储命令需要相对较长的时间。大部分时间都花在尝试优化生成的查询上。生成的 store 命令将包含每个 Include 的 Outer Join 或 Union,具体取决于您的映射。像这样的查询将在单个有效负载中从您的数据库中引入大型连接图,这将加剧任何带宽问题,尤其是当有效负载中存在大量冗余时(即在一对一中使用多个级别的 Include 来遍历关联-多方向)。

我建议使用可以帮助解决性能问题的 SQL Profiler 或 EF Profiler (fe EFProf)

于 2013-08-28T09:20:43.090 回答