我需要加载实体的导航属性。我一直在阅读一篇关于如何使用 Entity Framework (6.0) 加载导航属性的不同方法的精彩文章。
第二种显式加载的方法是来自 ObjectContext,而不是来自 EntityCollection 或 EntityReference。如果您依赖 Entity Framework 中的 POCO 支持,您的导航属性将不是 EntityCollections 或 EntityReferences,因此不会有 Load 方法。相反,您可以使用 ObjectContext.LoadProperty 方法。LoadProperty 使用泛型来标识要从中加载的类型,然后使用 lambda 表达式来指定要加载的导航属性。下面是使用 LoadProperty 检索特定人员实例的 Pets 的示例:
context.LoadProperty<Family>(familyInstance, f => f.Pets)
现在我唯一需要知道的是:
如何获得对 ObjectContext 的引用?
DbContext
似乎不是从它派生的,也没有对它的引用。LoadProperty<T>
不是静态的,所以我确实需要一个对象引用。