public ActionResult PridatSpravcePrezdivkou(String prezdivka) { using (ModelContainer db = new ModelContainer()) { int idInterpreta = int.Parse(Session["idInterpretaPridatSpravce"].ToString()); //oveření zda uživatel již není správcem interpreta if (db.SpravciInterpretu.Include(x => x.Uzivatel).Any(x => x.InterpretId == idInterpreta && x.Uzivatel.Prezdivka == prezdivka)) { Session["jizJeSpravce"] = "Vámi vybraný uživatel již má roli správce interpreta."; return(RedirectToAction("PridatSpravce", new { id = idInterpreta })); } //naplním nového správce potřebnými daty SpravceInterpreta novySpravce = new SpravceInterpreta(); novySpravce.Uzivatel = db.Uzivatele.Where(x => x.Prezdivka == prezdivka).First(); novySpravce.Interpret = db.Interpreti.Where(x => x.Id == idInterpreta).First(); //přidám nového správce db.SpravciInterpretu.Add(novySpravce); //uložím změny db.SaveChanges(); return(RedirectToAction("PridatSpravce", new { id = idInterpreta })); } }
public ActionResult Create([Bind(Include = "Nazev")] Interpret vkladanyInterpret) { //pokud není uživatel přihlášen pak ho přesměruji na přihlášení if (Session["uzivatelID"] == null) { return(RedirectToAction("Login", "Account")); } //získám ID uživatele ze session int idUzivatele = (int)Session["uzivatelID"]; String nazevInterpreta = vkladanyInterpret.Nazev; using (ModelContainer db = new ModelContainer()) { //vyhledám jestli interpret s tímto názvem již existuje int pocetVyskytu = db.Interpreti.Where(x => x.Nazev == nazevInterpreta).Count(); //pokud interpret neexistuje -> vložím do databáze if (pocetVyskytu == 0) { vkladanyInterpret.DatumVytvoreni = DateTime.Now; db.Interpreti.Add(vkladanyInterpret); //uživatele který interpreta vytvořil jmenuji správcem interpreta SpravceInterpreta spravce = new SpravceInterpreta(); spravce.Interpret = vkladanyInterpret; spravce.UzivatelId = idUzivatele; db.SpravciInterpretu.Add(spravce); //uložím změny db.SaveChanges(); } else { ViewBag.InterpretVytvoreniChyba = "Interpret se zadaným názvem již existuje!"; } } return(RedirectToAction("CreatePotvrzeni", "Interpret")); }