У меня есть несколько DbContext
, и я хотел бы использовать функцию пула DbContext
.
Мои DbContext
s зависят от службы с заданной областью (используется services.AddScoped<IScopedService, ScopedService>()
), и я разрешаю ее с помощью dbContext.GetService<IScopedService>()
внутри SaveChangesAsync
метода.Однако EF, предоставленный IServiceProvider
, не может разрешить IScopedService
.
Есть что-то, что я пропускаю?Я уверен, что мой сервис был зарегистрирован с корнем IServiceCollection
, прежде чем даже позвонить AddDbContextPool
.
Использование UseInternalServiceProvider
вызовет много горя между 2 DbContext
битвами за него.Это не проблема, если вы используете DbContext
s без пула.