public async Task <IActionResult> JoinSession([FromBody] SessionMembershipViewModel joinSessionViewModel) { try { var user = await _usersRepository.FindUser(joinSessionViewModel.UserId); var session = await _sessionsRepository.GetSessionByShortSessionCode(joinSessionViewModel.SessionCode); if (user != null && session != null) { await _sessionsRepository.AddUserToSession(user, session); return(Ok(session)); } else { return(BadRequest(new ErrorMessage("Unable to join session"))); } } catch (Exception ex) { return(HandleError(ex)); } }