В приложении ASP.NET Core я могу зарегистрировать DbContext через DI, как это
services.AddDbContext<Models.ShellDbContext>(options => options.UseNpgsql(connection));
И интересно узнать, какова его продолжительность жизни?
Отсюда https://github.com/aspnet/EntityFramework/blob/f33b76c0a070d08a191d67c09650f52c26e34052/src/Microsoft.EntityFrameworkCore/EntityFrameworkServiceCollectionExtensions.cs#L140 похоже, что он настроен как Scoped, что при каждом запросе создается экземпляр DbContext.
Итак, первая часть вопроса: Это правда, и если да, то насколько это дорого стоит?
И вторая часть: Если я создам сервис, который потребляет DbContext и предназначен для использования контроллерами, и будет иметь API для управления некоторыми объектами в БД, должен ли он быть зарегистрирован как облачный?