我正在尝试将使用 Entity Framework 4 的大型应用程序升级为使用 Entity Framework 5。我发现了这样的功能:
public FooModel(FooEntity foo)
{
_foo = foo;
_foo.bars.Load(System.Data.Objects.MergeOption.OverwriteChanges);
}
Wherefoo
和bar
是生成的实体,bar
具有指向 的外键foo
。
好像EF5已经没有这个.Load(MergeOption)
功能了,以前没见过。有谁知道它的作用,它的等价物是什么?
https://stackoverflow.com/a/13178313/784908表明这Load
是 DbContext 的一部分 - 但我的实体容器继承自 DbContext,仍然不可用
我最好的猜测是它用于外键的急切加载(我需要这样做,在请求中多次创建和处理上下文,并且没有保证它会在使用 FooModel 时存在/附加)
实体框架 - 相关实体的急切加载显示我应该使用.Include()
,但该功能似乎在实际实体上不可用(我认为该术语是“物化查询”?)
谢谢阅读