EF4自我跟踪实体导航属性

时间:2011-01-04 14:32:55

标签: c#-4.0 entity-framework-4 entity-relationship

我正在使用带有自我追踪实体T4模板的EF4。

当我在实体页面上执行选择时(具有导航属性类别),如:

var page = (from p in context.Page select p).FirstOrDefault();

导航属性Category始终为null。

当我这样做的时候:

var page = (from p in context.Page.Include("Category") select p).FirstOrDefault();

已加载类别。

为什么我必须将include函数与硬编码字符串一起使用?当我访问导航属性时,是否不能让EF4自动加载导航属性?

或者这只适用于EntityObjects而不是STE?

1 个答案:

答案 0 :(得分:1)

STE不支持延迟加载,只能通过context.LoadProperty。 POCO + EntityObject支持它。

.Include用于急切加载,希望此方法将被更改为支持lambda表达式而不是硬编码字符串。