public void AddFach(Fach fach) { var xmlNodes = _dataNode.Elements(); var faecherNode = _dataNode.Elements().FirstOrDefault(element => element.Name == "Faecher"); XElement fachNode = new XElement("Fach", new XAttribute("Name", fach.Name)); faecherNode.Add(fachNode); this.Save(); }
private Fach NodeToFach(XElement fachNode) { if (fachNode.Name != "Fach") { throw new ArgumentException("Der Knoten enthält kein Fach."); } Fach fach = new Fach(); fach.Name = fachNode.Attribute("Name").Value; return(fach); }
public void RemoveFach(Fach fach) { var xmlNodes = _dataNode.Elements(); var faecherNode = _dataNode.Elements().FirstOrDefault(element => element.Name == "Faecher"); var fachNode = faecherNode.Elements().FirstOrDefault(node => node.Attribute("Name").Value == fach.Name); if (fachNode != null) { fachNode.Remove(); } this.Save(); }
private Dictionary <string, Fach> NodeToPlan(XElement planNode) { var plan = new Dictionary <string, Fach>(); if (planNode.Descendants().Count() <= 0) { return(plan); } foreach (var fachNode in planNode.Elements()) { Fach fach = new Fach(); fach.Name = fachNode.Attribute("Name").Value; fach.Info = fachNode.Attribute("Info").Value; fach.Raum = fachNode.Attribute("Raum").Value; fach.Length = Convert.ToInt32(fachNode.Attribute("Laenge").Value); fach.FälltAus = Convert.ToBoolean(fachNode.Attribute("Fälltaus").Value); if (fachNode.Attribute("Startzeit").Value == "") { fach.Startzeit = Fach.StartZeit.None; } else { fach.Startzeit = (Fach.StartZeit)Enum.Parse(typeof(Fach.StartZeit), fachNode.Attribute("Startzeit").Value); } if (fachNode.Attribute("Wochentag").Value == "") { fach.Wochentag = Fach.WochenTag.None; } else { fach.Wochentag = (Fach.WochenTag)Enum.Parse(typeof(Fach.WochenTag), fachNode.Attribute("Wochentag").Value); } plan.Add(fachNode.Attribute("Key").Value, fach); } return(plan); }
public void AddStundenplan(string planName, Dictionary <string, Fach> stundenPlan) { if (stundenPlan == null) { return; } if (stundenPlan.Count <= 0) { return; } var xmlNodes = _dataNode.Elements(); var stundenPlaeneNode = _dataNode.Elements().FirstOrDefault(element => element.Name == "Stundenplaene"); var newPlan = new XElement("Plan", new XAttribute("Name", planName)); foreach (var pair in stundenPlan) { Fach fach = pair.Value; string key = pair.Key; XElement fachNode = new XElement("Fach", new XAttribute("Key", key), new XAttribute("Name", fach.Name ?? ""), new XAttribute("Raum", fach.Raum ?? ""), new XAttribute("Info", fach.Info ?? ""), new XAttribute("Startzeit", fach.Startzeit == Fach.StartZeit.None ? "" : fach.Startzeit.ToString()), new XAttribute("Wochentag", fach.Wochentag == Fach.WochenTag.None ? "" : fach.Wochentag.ToString()), new XAttribute("Laenge", fach.Length.ToString()), new XAttribute("Fälltaus", fach.FälltAus)); newPlan.Add(fachNode); } stundenPlaeneNode.Add(newPlan); this.Save(); }
public void AddFach(Fach fach) { faecherListe.Add(fach); }