public ActionResult Create(MovieViewModel model) { var maleActor = db.Actors.Find(model.LeadingMaleRoleId); var femaleActor = db.Actors.Find(model.LeadingFemaleRoleId); var studio = db.Studios.Find(model.StudioId); if (maleActor != null && femaleActor != null && studio != null) { var movie = new Movie(); movie.Title = model.Title; movie.Year = model.Year; movie.Director = model.Director; movie.LeadingMaleRole = maleActor; movie.LeadingFemaleRole = femaleActor; movie.Studio = studio; if (ModelState.IsValid) { db.Movies.Add(movie); db.SaveChanges(); return RedirectToAction("Index"); } } ViewBag.MaleActors = db.Actors.ToList().Where(a => a.Gender == Gender.Male).Select(a => new SelectListItem { Text = a.Name, Value = a.Id.ToString() }); ViewBag.FemaleActors = db.Actors.ToList().Where(a => a.Gender == Gender.Female).Select(a => new SelectListItem { Text = a.Name, Value = a.Id.ToString() }); ViewBag.Studios = db.Studios.ToList().Select(s => new SelectListItem { Text = s.Name, Value = s.Id.ToString() }); return PartialView("_CreateMovie", model); }
// GET public ActionResult EditMovie(string title, string director, int year, int id) { var model = new MovieViewModel() { Title = title, Director = director, Year = year, Id = id }; return this.PartialView("_PartialEditMovie", model); }
public ActionResult Create(MovieViewModel model) { if (ModelState.IsValid) { var newMovie = new Movie() { Title = model.Title, Year = model.Year, StudioName = model.StudioName, StudioAddress = model.StudioAddress, LeadingFemaleRole = new Actor() { Name = model.LeadingFemaleRole, Age = model.LeadingFemaleRoleAge }, LeadingMaleRole = new Actor() { Name = model.LeadingMaleRole, Age = model.LeadingMaleRoleAge } }; this.movies.Add(newMovie); this.movies.SaveChanges(); return this.RedirectToAction("Index"); } return View(model); }
public ActionResult Edit(MovieViewModel model) { if (ModelState.IsValid) { var movieForEdit = this.movies.GetById(model.Id); movieForEdit.Title = model.Title; movieForEdit.Year = model.Year; movieForEdit.StudioName = model.StudioName; movieForEdit.StudioAddress = model.StudioAddress; movieForEdit.LeadingMaleRole.Name = model.LeadingMaleRole; movieForEdit.LeadingFemaleRole.Name = model.LeadingFemaleRole; movieForEdit.LeadingMaleRole.Age = model.LeadingMaleRoleAge; movieForEdit.LeadingFemaleRole.Age = model.LeadingFemaleRoleAge; this.movies.SaveChanges(); return this.RedirectToAction("Index"); } return View(model); }
// GET: /Movies/Edit/5 public ActionResult Edit(int? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } Movie movie = db.Movies.Find(id); if (movie == null) { return HttpNotFound(); } ViewBag.MaleActors = db.Actors.ToList().Where(a => a.Gender == Gender.Male).Select(a => new SelectListItem { Text = a.Name, Value = a.Id.ToString() }); ViewBag.FemaleActors = db.Actors.ToList().Where(a => a.Gender == Gender.Female).Select(a => new SelectListItem { Text = a.Name, Value = a.Id.ToString() }); ViewBag.Studios = db.Studios.ToList().Select(s => new SelectListItem { Text = s.Name, Value = s.Id.ToString() }); var movieViewModel = new MovieViewModel() { Title = movie.Title, Director = movie.Director, Year = movie.Year, LeadingFemaleRoleId = movie.LeadingFemaleRole.Id, LeadingMaleRoleId = movie.LeadingMaleRole.Id, StudioId = movie.Studio.Id }; return PartialView("_EditMovie", movieViewModel); }