Доступ к свойствам Connection с использованием DbContext

Я обновляю свой код Entity Framework до версии v4.1. В старой версии у меня был мой контекстный класс, происходящий из ObjectContext, но с новой версией EF 4.1 они предоставили хороший API DbContext.

Я в основном пытаюсь преобразовать код так, чтобы он работал от подхода Database First к подходу Code First. Игра с EF 4.1

В старом коде у меня было что-то вроде

context.Connection.BeginTransaction(isolationLevel);

где тип контекста выводился из ObjectContext.

В v4.1 у меня нет доступа к свойству Connection из контекста. Как я могу это сделать?

Ответы

Ответ 1

Он находится в DbContext, и он должен быть общедоступным.

dbContext.Database.Connection.ConnectionString

и

dbContext.Database.Connection.BeginTransaction(isolationLevel)

Ответ 2

Новый DBC-текст имеет

context.Database.Connection.BeginTransaction() 

с некоторыми перегрузками. Сделайте определение Goto в Visual Studio, чтобы увидеть методы.

Ответ 3

Вы можете использовать что-то вроде

((IObjectContextAdapter)context).ObjectContext.Connection.BeginTransaction(isolationLevel);