简单的修改用户密码
如何实现当用户登录到主页面后需要修改密码
所以需要获取到用户的ID,所以在登录的时候就将用户的ID存进Session中,等到我需要修改密码的时候再将其取出来并使用
修改密码和普通的修改一样,都是先要获取到表单里面的数据,然后使用post请求将获取的数据传递给控制器:
在这里需要当控制器返回为false时,需要清空密码和确认密码
控制器这边最重要的是,获取当前登录的用户的用户id这样就可以修改该用户的密码了
然后就是查询出改用户的数据
//获取用户ID
int userId = Convert.ToInt32(strUserId);
//查询用户信息
var dbUser = (from tbUser in myModels.PW_User
where tbUser.UserID == userId
select tbUser).Single();
//然后将查询出的数据中的密码改成修改状态
myModels.Entry(dbUser).State = EntityState.Modified;
//再进行判断,是否成功修改
if (myModels.SaveChanges() > 0)
{
returnJson.State = true;
returnJson.Text = "修改成功";
}
else
{
returnJson.Text = "修改失败";
}
//最后将returnJson传回给页面,就完成了
//如果需要加密的密码,则需要在保存前再需要加密一次就可以了
//将查询出来的数据的密码用用户加密后的密码替换掉,再保存就可以了
dbUser.Password = AESEncryptHelper.Encrypt(strNewPassword);
if (myModels.SaveChanges() > 0)
{
returnJson.State = true;
returnJson.Text = "修改成功";
}
else
{
returnJson.Text = "修改失败";
}