在我的網站中,我想將用戶重定向到會話超時前的相同頁面。在會話超時後記住頁面
我試圖通過查詢字符串發送url,但它沒有工作,因爲url也包含「&」。
我的網址是:Default.aspx?FileID=23&TabID=3
。
查詢字符串只有Default.aspx?FileID=23
和TabID被省略。有什麼辦法我也可以得到它?如果沒有查詢字符串,是否有其他方法?
在我的網站中,我想將用戶重定向到會話超時前的相同頁面。在會話超時後記住頁面
我試圖通過查詢字符串發送url,但它沒有工作,因爲url也包含「&」。
我的網址是:Default.aspx?FileID=23&TabID=3
。
查詢字符串只有Default.aspx?FileID=23
和TabID被省略。有什麼辦法我也可以得到它?如果沒有查詢字符串,是否有其他方法?
當會話超時嘗試這一點,如果使用窗體身份驗證只是FormsAuthentication.RedirectToLoginPage();是足夠的,但如果你想重定向到其他頁面而不是登錄使用下面的自定義行。並使用Server.UrlEncode允許查詢字符串中的&
public static void DisposeAndLogout()
{
HttpContext context = HttpContext.Current;
try
{
FormsAuthentication.SignOut();
FormsAuthentication.Initialize();
Roles.DeleteCookie();
context.Session.Clear();
}
catch (Exception ex)
{
ErrorHandler.HandleException(ex);
}
finally
{
FormsAuthentication.RedirectToLoginPage();
//or can send to some other page
string OriginalUrl = context.Request.RawUrl;
string LoginPageUrl = @"~\Login.aspx";
context.Response.Redirect(String.Format("{0}?ReturnUrl={1}", LoginPageUrl, context.Server.UrlEncode(OriginalUrl)));
}
}
非常感謝。這正是我正在尋找的。 – user1509
如果您正在使用FormsAuthentication:
登錄:
FormsAuthentication.RedirectFromLoginPage()
http://msdn.microsoft.com/en-us/library/ka5ffkce.aspx
註銷:
FormsAuthentication.SignOut();
FormsAuthentication.RedirectToLoginPage();
http://msdn.microsoft.com/en-us/library/system.web.security.formsauthentication.signout.aspx
您使用表單身份驗證嗎? –