Я мигрирую EF6. net Приложение FWK на Entity Framework Core 3.0. однако в моем старом проекте EF6 у меня была возможность инициализировать DbContext с использованием объекта DbConnection, он использовался для реализации единицы работы и для использования той же транзакции без изменения объекта подключения.
public MyDataContext(IDbConnection connection)
: base((DbConnection) connection, false)
{
}
однако в ядре EF У меня есть только одна опция для инициализации контекста, который с DbContextOptions, который принимает строку подключения. и это инициализирует новое соединение, и я не смогу работать с транзакцией.
СТАРЫЙ EF-код
var pipeline = endpointConfiguration.Pipeline;
pipeline.Register(new UnitOfWorkSetupBehavior(storageSession =>
{
var dbConnection = storageSession.SqlPersistenceSession().Connection;
var context = ***new MyDataContext(dbConnection);***
context.Database.UseTransaction(storageSession.SqlPersistenceSession().Transaction);
storageSession.SqlPersistenceSession().OnSaveChanges(x => context.SaveChangesAsync());
return context;
}), "Setting up unit of work");
Какая альтернатива для конструктора с объектом соединения или что действительно изменилось в EF ядро DBcontext не брать соединение?