public ActionResult <ResultVM <AppUserVM> > ForgotPassword(string EmailId) { var resultVM = new ResultVM <bool>(); var result = accountBusiness.GetUserByEmailId(EmailId); if (result.Success) { //string otp = string.Empty; //while (userBusiness.CheckIfOTPExists(otp)) { otp = Common.GenerateRandomOTP(); }; //ResetPasswordModel resetPasswordModel = new ResetPasswordModel() //{ // UserId = result.Data.Id, // EmailId = result.Data.EmailId, // OTP = otp //}; //userBusiness.SaveResetOTP(resetPasswordModel); string subject = "Reset Password"; string body = string.Format("Hi,< br />< br /> We got request for reset your account password.Please use below OTP to reset your password" ); bool isSent = new Mailer() .Subject(subject) .Body(body) .To(EmailId) .Send(); resultVM.Success = isSent; resultVM.Message = isSent ? Enums.ResetPasswordEmail : Enums.EmailError; } else { resultVM.Message = result.Message; } return(Ok(new { result = result })); }