public ActionResult NewTeacher(ListTeacherViewModel model) { // Agrega un nuevo profesor al sistema try { if (ModelState.IsValid) // Checkea los DataAnnotations de ListTeacherViewModel, o sea los [Required] { // Si es un modelo vĂ¡lido, agregar el nuevo profe a la base using (Models.DBContainer db = new Models.DBContainer()) { Teacher teacher = new Teacher(); teacher.first_name = model.first_name; teacher.last_name = model.last_name; teacher.active = model.active; db.Teachers.Add(teacher); db.SaveChanges(); } return(RedirectToAction("ListTeachers", "Admin")); } return(View(model)); } catch (Exception exc) { throw new Exception(exc.Message); } }
public ActionResult EditTeacher(int id) { // Muestra los datos del profe a editar try { ListTeacherViewModel model = new ListTeacherViewModel(); using (Models.DBContainer db = new Models.DBContainer()) { Teacher teacher = db.Teachers.Find(id); if (teacher == null) { TempData["Alert"] = "An error occurred, try again later"; return(RedirectToAction("ListTeachers")); } model.id_teacher = teacher.id_teacher; model.first_name = teacher.first_name; model.last_name = teacher.last_name; model.active = teacher.active; } return(View(model)); } catch (Exception exc) { throw new Exception(exc.Message); } }
public ActionResult EditTeacher(ListTeacherViewModel model) { // Edita al profe y lo persiste en la base de datos try { if (ModelState.IsValid) { using (Models.DBContainer db = new Models.DBContainer()) { Teacher teacher = db.Teachers.Find(model.id_teacher); if (teacher == null) { TempData["Alert"] = "An error occurred, try again later"; return(RedirectToAction("ListTeachers")); } teacher.first_name = model.first_name; teacher.last_name = model.last_name; teacher.active = model.active; db.Entry(teacher).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } return(RedirectToAction("ListTeachers", "Admin")); } return(View(model)); } catch (Exception exc) { throw new Exception(exc.Message); } }
public ListTeacher() { InitializeComponent(); BindingContext = new ListTeacherViewModel(Navigation); }