Esempio n. 1
0
        // 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();
        }
Esempio n. 2
0
        // 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());
        }