创建共享实体框架连接

时间:2014-09-18 09:07:16

标签: .net entity-framework

我有一个现有的DbConnection(不是来自实体框架)。我想创建一个共享现有连接的DbContext(这样我的数据库操作就是同一个事务的一部分)。我可以使用现有(开放)连接创建DbContext,但是当我尝试通过EF对数据库进行简单查询时,它会失败,因为模型尚未加载到新的DbContext中。我怎样才能做到这一点?我首先使用Entity Framework 6.1,数据库。

要使用共享连接创建DbContext,我只需调用:

new DbContext(connection, false);

连接是现有的,打开的DbConnection,使用:

创建
IDatabaseDriver.GetConnection(settings);

例外是:System.InvalidOperationException。

消息是:实体类型XXX不是当前上下文的模型的一部分。

我相信我需要使用构造函数DbContext(existingConnection,model,contextOwnsConnection)。它是否正确?如果是这样,我如何在数据库优先设置中获得DbCompiledModel?

0 个答案:

没有答案