AA>>// Что тут неявного?
·>Непонятно кто от кого и как зависит.
AA>>Зато точка сборки приложения одна а не размазана по разным сборкам.
·>Просто делай то же самое, но без контейнера. Если я правильно разгадал твой код:
·>·>var dbOptions = new DbOptions()
·> .UseSqlServer(Configuration.GetConnectionString("DefaultConnection"));
·>var dbContext = new DbContext(dbOptions);
·>var mainService = new MainService(dbContext);
·>services.AddHostedService(mainService);
·>
·>Код внезапно стал проще — никаких лямбд, генериков, рефлексии, даункастов. Можно использовать IDE вовсю — find usages, declarations, использовать рефакторинги.
все разговоры в этой теме от банального непонимания, для чего придумали DI / IoC
ну так вот тебе надо ПРОТЕСТИРОВАТЬ, что схема базы данных, используемая твоим кодом, актуальна, например,
как ты с твоим этим кодом будешь писать код, который это проверяет?
с DI и EF InMemory Provider это будет где-то в три строчки