/// <summary> /// Configures services /// </summary> /// <returns>IServiceProvider object</returns> private IServiceProvider ConfigureServices(IConfiguration builder) { IServiceCollection services = new ServiceCollection(); IResourceHandler resourceHandler = new ResourceHandler(); IRepositoryProvider repositoryProvider = new RepositoryProvider(); ILocalizableLogHandler localizableLogHandler = LocalizableLogHandler.GetCurrentLocalizedLogger(resourceHandler, repositoryProvider, builder.GetConnectionString("LogsDB")); services.AddSingleton <IResourceHandler>(resourceHandler); services.AddSingleton <ILocalizableLogHandler>(localizableLogHandler); services.AddSingleton <IRepositoryProvider>(repositoryProvider); services.AddSingleton <DependencyInjectionServices>(); return(services.BuildServiceProvider()); }
/// <summary> /// Constructor for Dependency injection dervices /// </summary> /// <param name="localizableLogHandler">Localizable log handler</param> /// <param name="resourceHandler">Resource provider</param> /// <param name="repositoryProvider">Repository provider</param> public DependencyInjectionServices(ILocalizableLogHandler localizableLogHandler, IResourceHandler resourceHandler, IRepositoryProvider repositoryProvider) { this.localizableLogHandler = localizableLogHandler; this.resourceHandler = resourceHandler; this.repositoryProvider = repositoryProvider; }