EF从存储过程中急切加载

时间:2013-11-06 14:11:34

标签: entity-framework

我已经创建了一个存储过程来管理对我的应用程序的搜索。存储过程返回“个案”的集合。

当显示我的搜索结果时,我引用每个“case”的属性,该属性是数据库中的链接表。目前,延迟加载使EF框架为每个“案例”加载链接属性。

迷你探查器将此显示为数据库重复一次返回的每个对象(可能是200个对象)是否可以一次性加载所有链接的属性而不是延迟加载来执行此操作?

1 个答案:

答案 0 :(得分:0)

我认为你不能直接使用.Include()但是一旦你从存储过程得到结果,你可以运行一个Linq查询来获得所有相关结果 - 如:

var relatedReults = ctx.RelatedResults.Where(r => ids.Contains(r.Id)).ToArray(); 

其中id是您根据存储过程返回的结果构建的ID数组。 EF应该能够修复关系,因此在运行查询后,您应该能够访问相关实体而无需发送其他查询。