public async Task <WeatherModel> GetCurrentWeatherResultDataAsync <T>(ILogger <T> logger, string cityName, string metric, OpenWeatherMapModel resourceData) { var resultData = new WeatherModel(); await Task.Run(() => { var config = new MapperConfiguration(cfg => cfg.CreateMap <OpenWeatherMapModel, LogInfo>()); var mapper = new Mapper(config); var logInfo = mapper.Map <LogInfo>(resourceData); logger.LogInformation(logInfo.ToString()); var resultTemperature = metric.Equals("celsius") ? resourceData.Main.Temp : MetricHelper.CToF(resourceData.Main.Temp); resultData = new WeatherModel { City = cityName, Temperature = resultTemperature, Date = DateTime.Now.ToString(), TemperatureMetric = metric }; }); return(resultData); }
public async Task <IEnumerable <WeatherModel> > GetWeather5DaysResultDataAsync <T>(ILogger <T> logger, string cityName, string metric, WeatherFiveDaysData resourceData) { var weatherFiveDaysModel = new WeatherFiveDaysModel { WeatherFiveDays = new List <WeatherModel>() }; await Task.Run(() => { var listWheather = resourceData.list; foreach (var itemWheather in listWheather) { var resultTemperature = metric.Equals("celsius") ? itemWheather.main.Temp : MetricHelper.CToF(itemWheather.main.Temp); var resultData = new WeatherModel { City = cityName, Temperature = resultTemperature, Date = itemWheather.dt_txt, TemperatureMetric = metric }; weatherFiveDaysModel.WeatherFiveDays.Add(resultData); } }); return(weatherFiveDaysModel.WeatherFiveDays); }