/// <summary> /// Spiel der Liste hinzufügen /// </summary> /// <param name="titel"></param> /// <param name="pfad"></param> /// <param name="kategorie"></param> /// <param name="publisher"></param> /// <param name="usk"></param> public void SpielHinzufügen(string titel, string pfad, string kategorie, string publisher, int usk) { if (SpielFinden(titel) != null) { throw new ArgumentException("Spiel existiert bereits"); } // Pfad überprüfen Utils.Utils.PfadCheck(pfad); // Spielmodel befüllen Spiele spiel = new Spiele(); spiel.Titel = titel; spiel.InstallationsPfad = pfad; spiel.Kategorie = kategorie; spiel.Publisher = publisher; spiel.USK = usk; spiel.InstallationsDatum = DateTime.Now; spiel.ZuletztGespielt = null; // Spiel dem Datenmodell hinzufügen SpieleEntities spieleEntities = new SpieleEntities(); spieleEntities.Spiele.Add(spiel); spieleEntities.SaveChanges(); // Spiel zur Liste hinzufügen SpielListe.Add(spiel); }
/// <summary> /// Spiel starten /// </summary> /// <param name="titel"></param> public void SpielStarten(string titel) { Spiele spiel = SpielFinden(titel); if (spiel == null) { throw new ArgumentException("Spiel nicht gefunden"); } SpieleEntities spieleEntities = new SpieleEntities(); Spiele s = spieleEntities.Spiele.Find(spiel.SpielID); s.ZuletztGespielt = DateTime.Now; spieleEntities.SaveChanges(); Process.Start(spiel.InstallationsPfad); }
/// <summary> /// Existierendes Spiel aus der Liste löschen /// </summary> /// <param name="titel"></param> public void SpielLöschen(string titel) { // Spiel in der Datenbank finden Spiele spiel = SpielFinden(titel); if (spiel == null) { throw new ArgumentException("Spiel nicht gefunden"); } // Spiel aus der Datenbank löschen SpieleEntities spieleEntities = new SpieleEntities(); spieleEntities.Spiele.Remove(spieleEntities.Spiele.FirstOrDefault(s => s.Titel == titel)); spieleEntities.SaveChanges(); SpielListe.Remove(SpielListe.SingleOrDefault(x => x.Titel == spiel.Titel)); }