/// <summary> /// Method to read configurations and register services /// </summary> private static void Startup() { var configurationBuilder = new ConfigurationBuilder() .AddJsonFile("appsettings.json"); IConfiguration configs = configurationBuilder.Build(); // Bind configurations to models UserDetailsConfiguration userDetailsConfiguration = configs.GetSection("UserDetailsConfiguration").Get <UserDetailsConfiguration>(); ConsoleText consoleTexts = configs.GetSection("ConsoleTexts").Get <ConsoleText>(); ConnectionStringInfo connectionStringInfo = configs.GetSection("ConnectionStringInfo").Get <ConnectionStringInfo>(); var services = new ServiceCollection(); // Singleton services and objects services.AddSingleton(s => connectionStringInfo); services.AddSingleton <IFileService, FileService>(); services.AddSingleton <ITextLineUtilityService, TextLineUtilityService>(); services.AddSingleton(userDetailsConfiguration); services.AddSingleton(consoleTexts); // Transient services services.AddTransient <IApplication, Application>(); // Scoped services; services.AddScoped <IUserDetailsService, UserDetailsService>(); services.AddScoped <IBlobServiceFactory, BlobServiceFactory>(); _serviceProvider = services.BuildServiceProvider(true); }
public Application( IFileService fileService, ITextLineUtilityService textLineUtilityService, IUserDetailsService userDetailsService, IBlobServiceFactory blobServiceFactory, UserDetailsConfiguration userDetailsConfigurations, ConsoleText consoleText) { _fileService = fileService; _textLineUtilityService = textLineUtilityService; _userDetailsService = userDetailsService; _blobServiceFactory = blobServiceFactory; _userDetailsConfigurations = userDetailsConfigurations; _consoleText = consoleText; }
public UserDetailsService(UserDetailsConfiguration userDetailsConfiguration) { _UserDetailsConfiguration = userDetailsConfiguration; }