ASP.Net MVC 5 w / identity 2.2.0注销不工作

时间:2015-02-21 04:58:47

标签: asp.net-mvc asp.net-mvc-5 logout asp.net-identity-2

我在测试ASP.Net MVC 5站点(用于互联网站点)上使用基本登录。

登录工作正常,但是当我尝试注销时,它并没有发生。 注销链接会调用以下控制器操作:

public ActionResult LogOff()
{
    AuthenticationManager.SignOut();
    return RedirectToAction("Index", "Home");
}

但用户仍然保持登录状态。如何确保用户实际登出?

3 个答案:

答案 0 :(得分:49)

之前我遇到过这个问题,请改变:

AuthenticationManager.SignOut();

要:

AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie);

假设您使用 ApplicationCookie 存储您的登录信息。

答案 1 :(得分:2)

更好的方式:

public ActionResult Logout()
{
    SignInManager.AuthenticationManager.SignOut();
    return RedirectToAction("Index", "support", new { area = "" });
}

或者您可以将注入的SignInManager注入您的控制器,如下所示:

public ActionResult Logout()
{
    _signInManager.AuthenticationManager.SignOut();
    return RedirectToAction("Index", "support", new { area = "" });
}

没有尊重。

答案 2 :(得分:-4)

我遇到了无法注销的问题。我会保持登录状态,只能重定向回主视图。我正在使用Chrome,我在firefox中试过它,即没有问题。然后我用chrome清除了我的饼干,一切正常。如果其他人遇到这个问题,这可能是一个快速而简单的第一步。