0

我正在使用下面的 MVC5 登录身份验证代码:

    [HttpPost]
    [AllowAnonymous]
    [ValidateAntiForgeryToken]
    public ActionResult Login(LoginViewModel model, string returnUrl)
    {
        if (ModelState.IsValid)
        {
            // Validate the password
            IdentityResult result = IdentityManager.Authentication.CheckPasswordAndSignIn(AuthenticationManager, model.UserName, model.Password, model.RememberMe);
            if (result.Success)
            {
                return Redirect("~/home");
            }
            else
            {
                AddErrors(result);
            }
        }

        // If we got this far, something failed, redisplay form
        return View(model);
    }

如果密码不正确,代码会给出一条消息,但如果用户名不存在,它会给出相同的消息,说“密码不正确”。

有没有人有一个解决方案,它也可以检查用户名是否存在,如果它不存在则给出正确的消息?请注意,我使用的是 ASP.Net Identity,因此它需要成为解决方案,而不是简单成员身份验证

4

1 回答 1

3

如果您更新到 1.0 RTM 身份包,您可以通过以下方式检查用户是否存在: UserManager.FindByName("username")

于 2013-10-20T04:50:43.450 回答