public ActionResult Edit(SongEditViewModel viewModel) { var model = viewModel.EditedSong; // Note: name is allowed to be whitespace, but not empty. if (model.Names.All(n => string.IsNullOrEmpty(n.Value))) { ModelState.AddModelError("Names", SongValidationErrors.UnspecifiedNames); } if (model.Lyrics.Any(n => string.IsNullOrEmpty(n.Value))) { ModelState.AddModelError("Lyrics", "Lyrics cannot be empty"); } try { viewModel.CheckModel(); } catch (InvalidFormException x) { AddFormSubmissionError(x.Message); } if (!ModelState.IsValid) { return View(new SongEditViewModel(Service.GetSong(model.Id), PermissionContext, model)); } queries.UpdateBasicProperties(model); return RedirectToAction("Details", new { id = model.Id }); }
public ActionResult Edit(int id) { CheckConcurrentEdit(EntryType.Song, id); var model = new SongEditViewModel(Service.GetSong(id), PermissionContext); return View(model); }