ABP用戶修改密碼IPasswordHasher


注入IPasswordHasher

 public class UserAppService : AbpZeroTemplateAppServiceBase, IUserAppService
{
 private readonly IPasswordHasher<User> _passwordHasher;
     public UserAppService( IPasswordHasher<User> passwordHasher){
   _passwordHasher = passwordHasher;
    }

}

 

        /// <summary>
        /// 修改密碼
        /// </summary>
        /// <param name="TenantId"></param>
        /// <param name="userId"></param>
        /// <param name="OldPwd"></param>
        /// <param name="Pwd"></param>
        /// <returns></returns>
        public async Task<string> UpUserPassWordBy(long TenantId, long userId, string OldPwd, string Pwd)
        {
            var user = await UserManager.Users.Where(x => x.Id == userId && x.TenantId == TenantId).FirstOrDefaultAsync();
            var pwdBool = await UserManager.CheckPasswordAsync(user, OldPwd);
            if (pwdBool)
            {
                user.Password = user.Password = _passwordHasher.HashPassword(user, Pwd);
                await UserManager.UpdateAsync(user);
                return "修改成功";
            }
            else
            {
                return "原密碼不正確";
            }
        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM