public ActionResult Edit([Bind(Include = "ID,Nazwisko,Imie,DataZatrudnienia,Lokalizacja")] Dydaktyk dydaktyk, string[] wybraneKursy) //public ActionResult Edit(Dydaktyk dydaktyk) { db.Database.Log = s => System.Diagnostics.Debug.Write(s); if (ModelState.IsValid) { //dydaktyk.Lokalizacja.DydaktykID = dydaktyk.ID; //if (!String.IsNullOrEmpty(dydaktyk.Lokalizacja.Miejsce)) //{ // if (db.Lokalizacje.Any(l => l.DydaktykID == dydaktyk.ID)) // { // db.Entry(dydaktyk.Lokalizacja).State = EntityState.Modified; // } // else // { // db.Lokalizacje.Add(dydaktyk.Lokalizacja); // } //} ZaktualizujKursyDydaktyka(wybraneKursy, dydaktyk); //db.Entry(dydaktyk).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } throw; } WpiszPrzydzieloneDaneKursu(dydaktyk); return(RedirectToAction("Index")); } ViewBag.ID = new SelectList(db.Lokalizacje, "DydaktykID", "Miejsce", dydaktyk.ID); return(View(dydaktyk)); }
// GET: Dydaktyk/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Dydaktyk dydaktyk = db.Dydaktycy.Include(d => d.Lokalizacja).FirstOrDefault(d => d.ID == id); if (dydaktyk == null) { return(HttpNotFound()); } return(View(dydaktyk)); }
public ActionResult DeleteConfirmed(int id) { Dydaktyk dydaktyk = db.Dydaktycy.Find(id); //dydaktyk.Lokalizacja = null; var lok = db.Lokalizacje.FirstOrDefault(f => f.DydaktykID == id); db.Lokalizacje.Remove(lok); db.Dydaktycy.Remove(dydaktyk); db.SaveChanges(); return(RedirectToAction("Index")); }
// GET: Dydaktyk/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Dydaktyk dydaktyk = db.Dydaktycy.Include(d => d.Lokalizacja).Include(d => d.Kursy).FirstOrDefault(d => d.ID == id); WpiszPrzydzieloneDaneKursu(dydaktyk); if (dydaktyk == null) { return(HttpNotFound()); } ViewBag.ID = new SelectList(db.Lokalizacje, "DydaktykID", "Miejsce", dydaktyk.ID); return(View(dydaktyk)); }
private void WpiszPrzydzieloneDaneKursu(Dydaktyk dydaktyk) { var wszystkieKursy = db.Kursy; var kursyDydaktyka = new HashSet <int>(dydaktyk.Kursy.Select(k => k.KursID)); var viewModel = new List <PrzydzieloneDaneKursuVM>(); foreach (var kurs in wszystkieKursy) { viewModel.Add(new PrzydzieloneDaneKursuVM { KursID = kurs.KursID, Tytuł = kurs.Tytul, Przypisany = kursyDydaktyka.Contains(kurs.KursID) }); ViewBag.Kursy = viewModel; } }
public ActionResult Create([Bind(Include = "ID,Nazwisko,Imie,DataZatrudnienia,Lokalizacja")] Dydaktyk dydaktyk) { if (ModelState.IsValid) { dydaktyk.Lokalizacja.DydaktykID = dydaktyk.ID; if (!String.IsNullOrEmpty(dydaktyk.Lokalizacja.Miejsce)) { db.Lokalizacje.Add(dydaktyk.Lokalizacja); } db.Dydaktycy.Add(dydaktyk); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ID = new SelectList(db.Lokalizacje, "DydaktykID", "Miejsce", dydaktyk.ID); return(View(dydaktyk)); }
private void ZaktualizujKursyDydaktyka(string[] wybraneKursy, Dydaktyk dydaktyk) { dydaktyk.Kursy = new List <Kurs>(); Dydaktyk dydaktyk2 = db.Dydaktycy.Include(d => d.Lokalizacja).FirstOrDefault(d => d.ID == dydaktyk.ID); dydaktyk2.Kursy.Clear(); dydaktyk2.Imie = dydaktyk.Imie; dydaktyk2.Nazwisko = dydaktyk.Nazwisko; dydaktyk2.Lokalizacja = dydaktyk.Lokalizacja; if (wybraneKursy != null) { foreach (int kursID in wybraneKursy.Select(s => Convert.ToInt32(s))) { var item = db.Kursy.Single(k => k.KursID == kursID); //item.Dydaktycy.Add(dydaktyk2); //db.Entry(item).State = EntityState.Modified; dydaktyk2.Kursy.Add(item); } } }
protected override void Seed(RejestrSzkolen.DAL.RejestrContext context) { // This method will be called after migrating to the latest version. // You can use the DbSet<T>.AddOrUpdate() helper extension method // to avoid creating duplicate seed data. E.g. // // context.People.AddOrUpdate( // p => p.FullName, // new Person { FullName = "Andrew Peters" }, // new Person { FullName = "Brice Lambson" }, // new Person { FullName = "Rowan Miller" } // ); // var d1 = new Dydaktyk() { ID = 1234, Imie = "Jan", Nazwisko = "Kowalski", DataZatrudnienia = DateTime.Parse("2012-02-11") }; d1.Lokalizacja = new Lokalizacja() { Miejsce = "Mokotów", DydaktykID = 1234, Dydaktyk = d1 }; context.Dydaktycy.AddOrUpdate(d => d.Nazwisko, d1); context.SaveChanges(); var j1 = new Jednostka(); j1.JednostkaID = 1234; j1.Nazwa = "Finanse"; j1.Budget = 10000; j1.Administrator = d1; context.Jednostki.AddOrUpdate(j => j.Nazwa, j1); context.SaveChanges(); }