public override void RefreshWeather(City city) { //om det inte finns några väder eller om värderna är äldre än tidsstämplen if (!city.WeatherByDay.Any() || city.TimeStamp < DateTime.Now) { //tabort vädret om det är för gammalt! foreach (var weather in city.WeatherByDay.ToList()) { _repository.DeleteWeather(weather.WeatherID); } //hämta vädret från apiet lägg dem i databasen foreach (var weather in _webservice.GetCityWeather(city)) { _repository.AddWeather(weather); } city.TimeStamp = DateTime.Now.AddMinutes(15); _repository.Save(); } }
public override IEnumerable <Weather> RefreshWeather(Location location) { var weather = _repository.FindWeather(location.LocationID); if (!weather.Any() || weather.Any(x => x.NextUpdate < DateTime.Now)) { foreach (var item in weather) { _repository.DeleteWeather(item.WeatherID); } weather = _owmWebservice.GetForecast(location); foreach (var item in weather) { _repository.AddWeather(item); } _repository.Save(); } return(weather); }