public async Task <RedirectToActionResult> StartConversation(StartConversationViewModel viewModel, int id) { if (ModelState.IsValid) { string username = User.Identity.Name; AppUser user = await _userManager.FindByNameAsync(username); Message message = new Message(); message.MessageText = viewModel.Message.MessageText; message.Sender = user; message.Date = DateTime.Now; Conversation conversation = convoRepo.AddConversation(bookRepo.GetBookById(id), viewModel.Subject); repo.AddMessageToConversation(message, conversation); return(RedirectToAction("Conversation", new { id = conversation.ConversationId })); } return(RedirectToAction("StartConversation")); }