Исходя из вашего кода и комментариев, у вас есть настройка, предназначенная для веб-приложений .NET Core, которые могут быть реализованы с помощью служб (внедрение зависимостей).Однако вы можете запустить всю установку внедрения зависимостей в консольном приложении, в котором нет веб-приложения.
Во-первых, вам нужно будет добавить пакет Microsoft.AspNetCore.All
, чтобы вы получили все используемые классы (в основном Microsoft.Extensions.DependencyInjection
).Теперь вы можете создать своего поставщика услуг примерно так:
var provider = new ServiceCollection()
.AddDbContext<ProjectDbContext>(config => // connection here)
.AddScoped<IMakeRepository, MakeRepository>()
.BuildServiceProvider();
Теперь вы можете получить любую услугу, которую захотите, у своего поставщика.Приведенный выше код также позволяет вам добавить любой сервис, который вы найдете в любом учебном руководстве по .NET Core MVC, поскольку он использует те же классы и библиотеки.Допустим, вы хотите получить IMakeRepository
, вы можете использовать следующее:
var makeRepo = provider.GetService<IMakeRepository>();
Теперь вы можете проверить функции внутри вашего makeRepo
объекта.