c# - FormsAuthentication.RedirectToLoginPage() 什么都不做

标签 c# asp.net .net session session-state

我遇到以下问题:重新发布 ASP.NET Web 应用程序会导致(如预期的那样) session 重置,我保留了额外的用户信息(访问尝试会导致 NullReferenceException)。

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

void LogOut()
{
    Session.Clear();
    Session.Abandon();
    User = null;
    FormsAuthentication.SignOut();
    FormsAuthentication.RedirectToLoginPage()
}

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

Response.Redirect(FormsAuthentication.LoginUrl);

但它没有添加 returnUrl,这是我希望的(我不想手动模拟此行为)。

所以想弄清楚为什么第一种方法没有按预期工作。

最佳答案

您是否尝试过在 FormsAuthentication.RedirectToLoginPage() 之后调用 Response.End()

关于c# - FormsAuthentication.RedirectToLoginPage() 什么都不做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8376476/

相关文章:

c# - RSACng 无法验证哈希

c# - UWP SQL Server 迁移不起作用

c# - 从数字 XDocument 中选择一个元素

asp.net - 预编译的 ASP.NET Web 应用程序 : error "System.Web.HttpException file filename.aspx has not been pre-compiled, and cannot be requested."

c# - 动态数据站点上下拉列表中的分层数据

.net - Paypal REST API .net SDK - 400 个错误请求

java - Java 中是否有 IConvertible/System.Convert 的等效项?

c# - 为每个客户定制业务规则...(asp.net mvc)

c# - 删除当前加载的程序集

ASP.NET Core 2.0 EventLog 更改事件查看器中的应用程序名称