public Serie loadSerie(string name) { Serie eineSerie = new Serie(name); try { string path = string.Format (@"{0}Data/{1}.xml", _Ordnerpfad, name); XDocument doc = XDocument.Load(path); foreach (var element in doc.Descendants("Staffel")) { Staffel eineStaffel = new Staffel(element.Attribute("Name").ToString().Trim()); foreach (var elementEpisode in element.Descendants("Episode")) { Episode eineEpisode = new Episode(); eineEpisode.NummerInSerie = elementEpisode.Element("NummerInSerie").Value; eineEpisode.NummerInStaffel = elementEpisode.Element("NummerInStaffel").Value; eineEpisode.Name_de = elementEpisode.Element("Name_de").Value; eineEpisode.Erstausstrahlung_de = Convert.ToDateTime(elementEpisode.Element("Erstausstrahulung_de").Value.ToString()); eineEpisode.Name_eng = elementEpisode.Element("Name_eng").Value; eineEpisode.Erstausstrahlung_eng = Convert.ToDateTime(elementEpisode.Element("Erstausstrahulung_eng").Value.ToString()); eineEpisode.IstVorhanden = (bool)elementEpisode.Element("istVorhanden"); foreach (var elementSendetermin in elementEpisode.Descendants("Sendetermin")) { Sendetermin einSendetermin = new Sendetermin(); einSendetermin.Datum = Convert.ToDateTime(elementSendetermin.Element("Datum").Value.ToString()); einSendetermin.Wochentag = elementSendetermin.Element("Wochentag").Value; einSendetermin.Sendezeit = elementSendetermin.Element("Sendezeit").Value; einSendetermin.Sender = elementSendetermin.Element("Sender").Value; eineEpisode.AddSendetermin(Convert.ToInt32( elementSendetermin.Attribute("Key").Value), einSendetermin); } eineStaffel.AddEpisode(eineEpisode.NummerInSerie, eineEpisode); } eineSerie.AddStaffel(eineStaffel.Name, eineStaffel); } } catch (Exception ex) { //LogWindow.log (LogLevel.Error, ex.Message); //LogWindow.log (LogLevel.Error, ex.StackTrace); } return eineSerie; }