// This method gets called by a runtime. // Use this method to add services to the container public IServiceProvider ConfigureServices(IServiceCollection services) { services.AddMvc(); var path = _app.ApplicationBasePath; var config = new ConfigurationBuilder() .AddJsonFile($"{path}/config.json") .Build(); string typeName = config.Get<string>("RepositoryType"); services.AddSingleton(typeof(IBoilerRepository), Type.GetType(typeName)); object repoInstance = Activator.CreateInstance(Type.GetType(typeName)); IBoilerRepository repo = repoInstance as IBoilerRepository; services.AddInstance(typeof(IBoilerRepository), repo); TimerAdapter timer = new TimerAdapter(0, 500); BoilerStatusRepository db = new BoilerStatusRepository(); services.AddInstance(typeof(BoilerMonitor), new BoilerMonitor(repo, timer, db)); services.AddMvc().AddJsonOptions(options => { options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); }); // Uncomment the following line to add Web API services which makes it easier to port Web API 2 controllers. // You will also need to add the Microsoft.AspNet.Mvc.WebApiCompatShim package to the 'dependencies' section of project.json. // services.AddWebApiConventions(); return services.BuildServiceProvider(); }
// This method gets called by a runtime. // Use this method to add services to the container public IServiceProvider ConfigureServices(IServiceCollection services) { services.AddMvc(); var path = _app.ApplicationBasePath; var config = new ConfigurationBuilder() .AddJsonFile($"{path}/config.json") .Build(); string typeName = config.Get <string>("RepositoryType"); services.AddSingleton(typeof(IBoilerRepository), Type.GetType(typeName)); object repoInstance = Activator.CreateInstance(Type.GetType(typeName)); IBoilerRepository repo = repoInstance as IBoilerRepository; services.AddInstance(typeof(IBoilerRepository), repo); TimerAdapter timer = new TimerAdapter(0, 500); BoilerStatusRepository db = new BoilerStatusRepository(); services.AddInstance(typeof(BoilerMonitor), new BoilerMonitor(repo, timer, db)); services.AddMvc().AddJsonOptions(options => { options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); }); // Uncomment the following line to add Web API services which makes it easier to port Web API 2 controllers. // You will also need to add the Microsoft.AspNet.Mvc.WebApiCompatShim package to the 'dependencies' section of project.json. // services.AddWebApiConventions(); return(services.BuildServiceProvider()); }