FormsAuthentication.RedirectToLoginPage()什么都不做

aba*_*hev 1 .net c# asp.net session session-state

我有以下问题:重新发布ASP.NET Web应用程序导致(按预期)会话重置我保留其他用户信息(访问尝试将导致NullReferenceException).

为避免这种情况,我的页面检查此信息是否存在,如果null将用户重定向到登录页面(表单身份验证),所以我正在调用:

void LogOut()
{
    Session.Clear();
    Session.Abandon();
    User = null;
    FormsAuthentication.SignOut();
    FormsAuthentication.RedirectToLoginPage()
}
Run Code Online (Sandbox Code Playgroud)

但有时它没有帮助,所以我找到了一个解决方法:

Response.Redirect(FormsAuthentication.LoginUrl);
Run Code Online (Sandbox Code Playgroud)

但它没有添加returnUrl,我希望它是什么(我不想手动模拟这种行为).

所以想弄清楚为什么第一种方法不能按预期工作.

Sco*_*ttE 5

你试过打电话Response.End()FormsAuthentication.RedirectToLoginPage()吗?