我正在实现我的用户登录功能,一切正常,它还添加到数据库中。我唯一的问题是 HashPassword 函数不起作用。当我检查数据库时,密码没有经过哈希处理
private string HashPassword(string password)
{
using var sha256 = SHA256.Create();
var hash = sha256.ComputeHash(System.Text.Encoding.UTF8.GetBytes(password));
return Convert.ToBase64String(hash);
}
我调用函数的方式是:
public async Task<User> Register(UserAccess userAccess)
{
var passwordHash = HashPassword(userAccess.Password);
var user = new User
{
Username = userAccess.Username,
Email = userAccess.Email,
Password = passwordHash
};
_context.Users.Add(user);
await _context.SaveChangesAsync();
return user;
}
任何人都可以帮忙解释为什么哈希密码不起作用
好吧,代码本身没有问题。我想我只是忘记保存或构建解决方案,但每次运行代码时,解决方案都会自动构建。不管怎样,代码没有任何问题,现在一切正常。密码也被正确散列并添加到数据库中