嗨,我在devart中也需要同样的帮助。我想更改用户的密码更改model.KullaniciSifre与新的hascode并想添加userModel。当此行var result = await UserManager.ChangePasswordAsync(userr.UserName, code, model.KullaniciSifre);
这是我的后端代码:
[HttpPost]
[AjaxOnly]
[Authorize(Roles = "DigitalAdmin, DigitalAgency,DigitalUser")]
public async Task<ActionResult> KullaniciGuncelle(KullaniciFormModel model)
{
ApplicationUser userr = System.Web.HttpContext.Current.GetOwinContext().GetUserManager<ApplicationUserManager>().FindById(System.Web.HttpContext.Current.User.Identity.GetUserId());
var currentUserr = userr.UserName;
var newKullaniciUserName = userr.UserName;
var newKullaniciEmail = userr.Email;
string code = await UserManager.GeneratePasswordResetTokenAsync(userr.Id);
var result = await UserManager.ChangePasswordAsync(userr.UserName, code, model.KullaniciSifre);
if (!result.Succeeded)
{
var myResult = new
{
err = "1",
errMsg = "Kullanıcı kaydı yapılamadı..."
};
return Json(myResult, JsonRequestBehavior.AllowGet);
}
else
{
var userModel = new KullaniciFormModel();
userModel.KullaniciSifre = model.KullaniciSifre;
userModel.USERID = userr.Id;
var resultKaydet = Guncelle(userModel);
if (resultKaydet != "E")
{
return Json(new
{
err = "1",
errMsg = "Kullanıcı kaydı yapıldı, rol ataması yapıldı, detay kaydedilemedi..."
});
}
else
{
return Json(new { err = "0", errMsg = "Kullanıcı kaydı başarıyla tamamlandı..." });
}
}
}
这是我的js代码:
$('#GuncelleBtn').click(function () {
if (sifreFormKontrol()) {
var jsonKullaniciGuncelleData = {
KullaniciSifre: $('#SifreGuncelle').val(),
};
var jsonKullaniciGuncelleData = JSON.stringify(jsonKullaniciGuncelleData);
$.ajax({
type: 'POST',
url: "@Url.Action("KullaniciGuncelle", "Admin")",
data: jsonKullaniciGuncelleData,
dataType: 'json',
headers: { 'RequestVerificationToken': '@TokenHeaderValue()' },
contentType: "application/json;charset=utf-8",
cache: false,
beforeSend: function() {
mApp.blockPage({ overlayColor: "#000000", type: "loader", state: "success", message: "Kullanıcı kaydediliyor ..." });
},
success: function (data) {
debugger; var err = data.err;
var errMsg = data.errMsg;
debugger; if (err === "0") {
toastr["success"](errMsg).css("min-width", "300px");
} else {
toastr["warning"](errMsg).css("min-width", "300px");
}
},
complete: function () {
table.ajax.reload(function (json) {
mApp.unblockPage();
});
}
}).done(function () {
});
}
});