无法登录ASP.NET Identity站点

时间:2018-05-28 16:40:16

标签: asp.net asp.net-core-mvc asp.net-identity

我正在开发一个新的ASP.NET MVC Core 2.0,并且我使用ASP.NET Identity作为该站点的成员系统。但是,即使我的SignInManager在登录尝试后返回SignInStatus.Success,我也无法登录用户。

这是登录功能的控制器代码:

public async Task<IActionResult> Login(LoginViewModel model)
    {
        var user = _db.Users.Where(x => x.Email == model.Email).FirstOrDefault();

        if (!ModelState.IsValid)
            return View();

        var result = await _signinManager.PasswordSignInAsync(
            model.Email, model.Password,
            model.RememberMe, false
            );

        if (!result.Succeeded)
        {
            ModelState.AddModelError("", "Login error");
            return View();
        }

        if (user.Role == "Admin")
        {
            return RedirectToAction("Users");
        }

        return RedirectToAction("Account");
    }

1 个答案:

答案 0 :(得分:0)

确保在Startup.cs文件中设置了身份服务和中间件。

确保在Configure方法中有app.UseAuthentication。使用services.ConfigureApplicationCookie

在ConfigureServices方法中设置基于Cookie的身份验证

检查article