public async Task <ActionResult <string> > Login([FromBody] LoginViewModel model) { try { if (model == null) { return(BadRequest()); } var user = await _usersManager.FindByEmailAsync(model.Email); if (user == null) { return(BadRequest($"No user registered with email : {model.Email}")); } var validPassword = await _usersManager.CheckPasswordAsync(user, model.Password); if (!validPassword) { return(BadRequest("Invalid password")); } var token = await _usersManager.LoginUserAsync(user); return(Ok(token)); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError, "Error in User Login operation")); } }