public ActionResult Create(FotoAlbumViewModel model) { model.Tournaments = InitTournaments(); if (model.TournamentId == 0) { ModelState.AddModelError("TournamentId", new Exception("Обязательное поле")); } var tournament = DataAccess.Tournaments.Find(model.TournamentId); if (tournament == null) { model.Message = "Данный турнир не найден."; return View(model); } if (tournament.FotoAlbum != null) { model.Message = "Данный турнир уже имеет фотоальбом. Если вы хотите создать новый альбом, то сначала удалите старый."; ModelState.AddModelError("TournamentId", new Exception("У данного турнира уже есть альбом")); } if (!ModelState.IsValid) { return View(model); } var album = new FotoAlbum() { Name = model.Name, LastModifiedOn = DateTime.Now, Tournament = tournament }; DataAccess.FotoAlbums.Add(album); DataAccess.SaveChanges(); return RedirectToAction("index"); }
public FotoAlbumViewModel(FotoAlbum album) { this.Id = album.Id; this.Name = album.Name; this.TournamentId = album.Tournament != null ? album.Tournament.Id : 0; }