public void ApiDohvat() { List <Gradovi> gradovi = new List <Gradovi>(); using (BazaVremProgEntities kontekst = new BazaVremProgEntities()) { gradovi = kontekst.Gradovi.ToList(); } int brojGradova = gradovi.Count(); for (int i = 0; i < brojGradova; i++) { Gradovi trenutniGrad = new Gradovi(); trenutniGrad = gradovi[i]; string grad = trenutniGrad.imeGrad; string apiKljuc = "29162b051f109cc1be64040092ba2918"; HttpWebRequest apiRequest = WebRequest.Create("http://api.openweathermap.org/data/2.5/forecast?q=" + grad + ",hr&appid=" + apiKljuc + "&units=metric&lang=hr") as HttpWebRequest; string apiOdgovor = ""; using (HttpWebResponse response = apiRequest.GetResponse() as HttpWebResponse) { //HttpWebResponse response = apiRequest.GetResponse() as HttpWebResponse; StreamReader citac = new StreamReader(response.GetResponseStream()); apiOdgovor = citac.ReadToEnd(); } KorjenskiObjekt listaOdgovor = JsonConvert.DeserializeObject <KorjenskiObjekt>(apiOdgovor); List <Prognoza> listaPrognoza = new List <Prognoza>(); foreach (var clan in listaOdgovor.list) { Prognoza zaDodati = new Prognoza(); zaDodati.datum = DateTime.Parse(clan.dt_txt); zaDodati.grad = trenutniGrad.id; zaDodati.temperatura = clan.main.temp; zaDodati.vlaznost = clan.main.humidity; zaDodati.vrijeme = clan.weather[0].description; zaDodati.ikona = clan.weather[0].icon; if (clan.rain != null) { zaDodati.kisa = clan.rain.kolicinaKise; } else { zaDodati.kisa = 0; } if (clan.snow != null) { zaDodati.snijeg = clan.snow.kolicinaSnijega; } else { zaDodati.snijeg = 0; } if (clan.wind != null) { zaDodati.smjerVjetra = clan.wind.deg; zaDodati.brzinaVjetra = clan.wind.speed; } listaPrognoza.Add(zaDodati); } ProvjeraISpremanje(listaPrognoza); if (i % 56 == 0 && i != 0) { Thread.Sleep(60000); } } return; }