public async Task <JsonResult> SubmitVoteForDate(Guid eventId, Guid optionId, Guid usersVoteId, WillAttend?willAttend) { var userId = User.Identity.GetUserId(); var voteModel = new VoteForDate() { Id = usersVoteId, TimeSlotId = optionId, UserId = userId, WillAttend = willAttend }; await _votingService.SubmitVoteForDate(voteModel); var votes = await _votingService.GetVotesForDateAsync(eventId, optionId); var totalNumberOfVoters = await _votingService.GetTotalNumberOfVotersForEvent(eventId); return(Json(new { Option = new OptionViewModel() { UsersVote = MappingHelper.MapToUsersVoteModel(votes, userId), Votes = MappingHelper.MapToVotesViewModel(votes) }, TotalNumberOfVoters = totalNumberOfVoters }, JsonRequestBehavior.AllowGet)); }