public void GetDocument() { string link = _config.GetSection("DataSource").Value; XmlDocument document = new XmlDocument(); document.Load(link); //Console.WriteLine(document.InnerXml); var xmlString = XElement.Parse(document.InnerXml); //vrijeme mjerenja za sve var timeStamp = document.DocumentElement.FirstChild.LastChild.InnerText; //id uredjaja-- ne znam jel bi trebalo preko for petlje ili ovako posebno a vjerovatno posebno //i uz ovo ide ime lokacije u zavisnosti od id uredjaja var devices = document.GetElementsByTagName("Device"); var senzor = document.GetElementsByTagName("Sensors"); List <Uredjaj> uredjaji = new List <Uredjaj>(); foreach (XmlNode device in devices) { if (!_service.ProvjeraUredjaja(device)) { _service.DodajUredjaj(device); } } //naziv senzora i tip (na osnovu naziva možes napisati tip bez da ga izvlacis iz xml-a //prikom svakog ocitanja xml-a u liste se spašavaju vrijednosti foreach (Uredjaj uredjaj in uredjaji) { switch (uredjaj.listaLokacija) { case "SERVER SALA 1": List <Mjerenje> mjerenja_sala1 = new List <Mjerenje>(); for (int j = 0; j < senzor[0].ChildNodes.Count; j++) { Mjerenje mjerenje = _service.DodajMjerenje(senzor[0], j); mjerenja_sala1.Add(mjerenje); if (!_service.ProvjeraSenzora(senzor[0], j)) { _service.DodajSenzor(senzor[0], j); } var _senzor = _service.PronadjiSenzor(int.Parse(senzor[0].ChildNodes[j].Attributes[0].InnerText)); _context.Senzori.FirstOrDefault(x => x.senzorId == _senzor.senzorId).mjerenja = mjerenja_sala1; _context.SaveChanges(); } mjerenja_sala1 = new List <Mjerenje>(); break; case "SERVER SALA 2": List <Mjerenje> mjerenja_sala2 = new List <Mjerenje>(); for (int j = 0; j < senzor[1].ChildNodes.Count; j++) { Mjerenje mjerenje = _service.DodajMjerenje(senzor[1], j); mjerenja_sala2.Add(mjerenje); if (!_service.ProvjeraSenzora(senzor[1], j)) { _service.DodajSenzor(senzor[1], j); } var _senzor = _service.PronadjiSenzor(int.Parse(senzor[1].ChildNodes[j].Attributes[0].InnerText)); _context.Senzori.FirstOrDefault(x => x.senzorId == _senzor.senzorId).mjerenja = mjerenja_sala2; _context.SaveChanges(); } mjerenja_sala2 = new List <Mjerenje>(); break; case "KOTLOVNICA": List <Mjerenje> mjerenja_kotlovnica = new List <Mjerenje>(); for (int j = 0; j < senzor[2].ChildNodes.Count; j++) { Mjerenje mjerenje = _service.DodajMjerenje(senzor[1], j); mjerenja_kotlovnica.Add(mjerenje); if (!_service.ProvjeraSenzora(senzor[2], j)) { _service.DodajSenzor(senzor[2], j); } var _senzor = _service.PronadjiSenzor(int.Parse(senzor[2].ChildNodes[j].Attributes[0].InnerText)); _context.Senzori.FirstOrDefault(x => x.senzorId == _senzor.senzorId).mjerenja = mjerenja_kotlovnica; _context.SaveChanges(); } mjerenja_kotlovnica = new List <Mjerenje>(); break; default: continue; } } }