更改用户名会破坏ASP.NET标识

时间:2015-10-01 08:21:34

标签: c# asp.net-mvc asp.net-identity

我使用以下内容来更改UserName

// POST: /Manage/ChangeUserName
        [HttpPost]
        [ValidateAntiForgeryToken]
        public async Task<ActionResult> ChangeUserName(ChangeUserNameViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return View(model);
            }
            var user = UserManager.FindById(User.Identity.GetUserId());
            user.UserName = model.NewUserName;
            var result = await UserManager.UpdateAsync(user);
            if (result.Succeeded)
            {
                return RedirectToAction("Index", new { Message = ManageMessageId.ChangeUserNameSuccess });
            }
            AddErrors(result);
            return View(model);
        }

它成功更改了数据库中的名称。 但是一旦我退出了。我无法重新登录。

用户仍在数据库中。 和登录代码

 var result = await SignInManager.TwoFactorSignInAsync(model.Provider, model.Code, isPersistent: model.RememberMe, rememberBrowser: model.RememberBrowser);

只需返回SignInStatus.Failure

没有其他错误发生。 任何想法为什么会发生?

0 个答案:

没有答案