【发布时间】:2015-01-02 20:25:34
【问题描述】:
我正在尝试在会话结束时将用户重定向到另一个页面。
此代码将导致“对象引用未设置为对象的实例”。异常
void Session_End(Object sender, EventArgs E)
{
HttpContext.Current.Response.Redirect("/");
}
知道怎么做吗?
【问题讨论】:
-
当您获得该触发器时,您与用户页面没有任何联系,因此 Reponse 为空。尝试进行某种 javascript 调用来检查用户是否没有丢失他们的会话。这很棘手,因为每个调用都可以再次触发会话更新。
-
您正在挂钩一个与页面请求无关的事件,这就是为什么您的 HttpContext.Current (可能)是这里的空引用。你具体想要什么?您是否想实现注销功能,或者可能检测用户何时不在会话中?这些都是不同的情况,有不同的答案,每一个都与上面的代码不同。
-
我想将用户重定向到注销页面
-
NullReferenceException的几乎所有情况都是相同的。请参阅“What is a NullReferenceException in .NET?”获取一些提示。
标签: c# asp.net asp.net-mvc-5 nullreferenceexception session-timeout