public async Task <IActionResult> VoteGame(VoteGameModel viewModel) { try { var gameVote = new GameVotes { Id = Guid.NewGuid(), GameId = viewModel.GameId, Rating = viewModel.Rating }; _context.GameVotes.Add(gameVote); await _context.SaveChangesAsync(); //Update avarge rating for selected game var avgRating = _context.GameVotes.Where(x => x.GameId == viewModel.GameId).Average(y => y.Rating); var game = GetGame(viewModel.GameId); game.Rating = Convert.ToInt32(avgRating); _context.Games.Update(game); await _context.SaveChangesAsync(); return(Redirect($"~/Home")); } catch (Exception ex) { ModelState.AddModelError("", ex.Message); } return(View(viewModel)); }
public IActionResult VoteGame() { var model = new VoteGameModel(); model.GameList = GetAllGames(); return(View(model)); }