public IActionResult Index(int id) { var talk = _db.Talks .Include(x => x.Ratings) .SingleOrDefault(x => x.Id == id); if (talk == null) { return(NotFound()); } var viewModel = new TalkDetailsViewModel(talk); return(View(viewModel)); }
public IActionResult RateTalk(int talkId, Rating newRating) { var talk = _db.Talks.SingleOrDefault(x => x.Id == talkId); if (talk == null) { return(NotFound()); } if (!ModelState.IsValid) { var viewModel = new TalkDetailsViewModel(talk); viewModel.Talk = talk; return(View("Index", viewModel)); } talk.Ratings.Add(newRating); _db.SaveChanges(); return(new RedirectToActionResult("Rated", "Talk", null)); }