public void ConfigureServices(IServiceCollection services) { services.AddControllers(); services.AddOptions(); var appConfiguration = new ConfigurationBuilder() .AddEnvironmentVariables() .Build(); var pokemonConfig = new BaseConfiguration(); var shakespeareTransformProvider = new ShakespeareTextTransformProvider(); var pokemonProvider = new PokemonProvider(); pokemonConfig.SetEnvironmentConfiguration(appConfiguration); services.AddSingleton(pokemonConfig); services.AddSingleton <IPokemonProvider>(pokemonProvider); services.AddSingleton <ITextTransformProvider>(shakespeareTransformProvider); services.AddLogging( builder => { builder .AddFilter("Microsoft", LogLevel.Information) .AddFilter("System", LogLevel.Information) .AddConsole(); }); }