Доступ к свойству Connection с помощью DbContext - PullRequest
23 голосов
/ 10 мая 2011

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

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

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

context.Connection.BeginTransaction(isolationLevel);

, где тип контекста был получен из ObjectContext.

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

Ответы [ 4 ]

52 голосов
/ 10 мая 2011

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

dbContext.Database.Connection.ConnectionString

также:

dbContext.Database.Connection.BeginTransaction(isolationLevel)
3 голосов
/ 05 марта 2019

В новом дивном мире .Net Core вы можете использовать:

context.Database.GetDbConnection()
3 голосов
/ 10 мая 2011

Новый DBContext имеет метод

context.Database.Connection.BeginTransaction() 

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

1 голос
/ 10 мая 2011

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

((IObjectContextAdapter)context).ObjectContext.Connection.BeginTransaction(isolationLevel);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...