public JsonWebToken Authenticate(string emailOrUserName, string password, out UserVM user) { var userEM = userRepository.FindUser(emailOrUserName); if (userEM == null || !CheckPassword(userEM, password)) { throw new Exception("User is not found."); } user = mapper.ConvertTo <UserVM>(userEM); var claims = claimService.CreateClaims(userEM); return(jwtService.CreateJwt(claims, jwtOptions)); }