如何从EF 4.1中的POCO代理获取DbContext?

时间:2011-09-07 20:52:05

标签: entity-framework entity-framework-4.1 ef-code-first

如何从EF 4.1中的POCO代理获取DbContext?

我可以在调试器中看到ObjectContext,但找不到DbContext。

1 个答案:

答案 0 :(得分:1)

DbContext有这个重载的构造函数:

public DbContext(ObjectContext objectContext, bool dbContextOwnsObjectContext)

因此,您可以尝试创建一个DbContext包装您从代理中检索到的objectContext:为您的派生上下文创建一个合适的构造函数...

public class MyContext : DbContext
{
    public MyContext(ObjectContext objectContext,bool dbContextOwnsObjectContext)
        : base(objectContext, dbContextOwnsObjectContext)
    {
    }
}

...然后以这种方式调用它:

var myContext = new MyContext(objectContext, false);