Dhaneel.Com
Technical & Miscellaneous Ramblings
-
Redirect user when session timeout
Posted on July 15th, 2009 No commentsI was searching for a best way to redirect client when sessions timeout.Found few solutions but I liked this one.
-
private void CheckSessionTimeout()
-
{
-
string msgSession = "Warning: Within next 3 minutes, if you do not do anything, " + " our system will redirect to the login page. Please save changed data.";
-
//time to remind, 3 minutes before session ends
-
int int_MilliSecondsTimeReminder = (this.Session.Timeout * 60000) - 3 * 60000;
-
//time to redirect, 5 milliseconds before session ends
-
int int_MilliSecondsTimeOut = (this.Session.Timeout * 60000) - 5;
-
-
string str_Script = @"
-
var myTimeReminder, myTimeOut;
-
clearTimeout(myTimeReminder);
-
clearTimeout(myTimeOut); " +
-
"var sessionTimeReminder = " +
-
int_MilliSecondsTimeReminder.ToString() + "; " +
-
"var sessionTimeout = " + int_MilliSecondsTimeOut.ToString() + ";" +
-
"function doReminder(){ alert(’" + msgSession + "’); }" +
-
"function doRedirect(){ window.location.href=window.location.href; }" + @"
-
myTimeReminder=setTimeout(’doReminder()’, sessionTimeReminder);
-
myTimeOut=setTimeout(’doRedirect()’, sessionTimeout); ";
-
-
ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(),
-
"CheckSessionOut", str_Script, true);
-
}
call this function on each page call. Like you can put it in
-
-
protected void Page_Load(object sender, EventArgs e)
-
{
-
this.CheckSessionTimeout();
-
}
-
Hope this will help.
-


