public async Task <string> GetDataByDateAndCityNames(string date, string cityName)
        {
            var city = await _context.City
                       .FirstOrDefaultAsync(m => m.Name == cityName);

            return(SunService.GetDataFromServer(city.Lattitude.ToString(), city.Longitude.ToString(), date).Result.ToString());
        }
Beispiel #2
0
        // This method gets called by the runtime. Use this method to add services to the container.
        // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940
        public void ConfigureServices(IServiceCollection services)
        {
            var appConfiguration = Configuration.Get <AppConfiguration>();

            var httpClient        = new HttpClient();
            var zWayService       = new ZWayService(httpClient, LoggerFactory.CreateLogger <ZWayService>());
            var weatherService    = new WeatherService(httpClient, LoggerFactory.CreateLogger <WeatherService>());
            var sunService        = new SunService(httpClient, LoggerFactory.CreateLogger <SunService>());
            var virtualService    = new DeviceGroupService(zWayService);
            var aggregatedService = new AggregatedDeviceService(zWayService, virtualService, weatherService, sunService);
            var statisticsService = new StatisticsService(LoggerFactory.CreateLogger <StatisticsService>(), aggregatedService, appConfiguration.Statistics);


            zWayService.InitAsync(appConfiguration.ZWay).Wait();
            weatherService.InitAsync(appConfiguration.Weather).Wait();
            sunService.InitAsync(appConfiguration.Sun).Wait();
            virtualService.Init(appConfiguration.DeviceGroups);
            aggregatedService.Init(appConfiguration.ToggleAutomationRules);
            statisticsService.Init();

            services.AddMvc();
            services.AddSingleton <HttpClient>(new HttpClient());
            services.AddSingleton <IDeviceService>(aggregatedService);
            services.AddSingleton <VersionService>(new VersionService());
            services.AddSingleton <StatisticsService>(statisticsService);
            //services.AddSignalR();
        }
Beispiel #3
0
        public void GetDataFromServerResultNotEmpty()
        {
            string result = SunService.GetDataFromServer("36.7201600", "-4.4203400", "today").Result;

            Console.WriteLine(result);
            Assert.NotEmpty(result);
        }