Как реализовать внедрение зависимостей вне startup.cs - PullRequest
0 голосов
/ 16 июня 2020

Я пытаюсь реализовать зависимость вне файла startup.cs (точнее, в контроллере). Быть не работает. Я не могу получить IServiceColection где-нибудь за пределами startup.cs

public class ServiceEidaServiceInjection : IServiceEidaServiceInjection
    {
        List<EidaServiceDTO> eidaServices;
        IServiceCollection Services;
        public ServiceEidaServiceInjection(IServiceCollection services)
        {
            Services = services;
        }
        public void InjectEidaServices()
        {
            eidaServices = new EidaServiceBLL().GetAll();
            foreach (EidaServiceDTO eidaService in eidaServices)
            {
                Services.RegisterType(typeof(ServiceEidaServiceInjection).Assembly, eidaService.InterfaceName, eidaService.ClassName);
            }
        }
    }

Я пытаюсь вызвать InjectEidaServices () в LoginController, но внедрение IServiceCollection в этот касс не работает.

PS: InjectEidaService () получает возможность вызвать метод расширения IServiceCollection для регистрации служб.

...