У меня есть страница Default.aspx, которая наследуется от BasePage.cs, которая наследуется от System.Web.UI.Page.BasePage - это место, где я проверяю, истекло ли время сеанса.Когда время сеанса истекло, и пользователь что-то нажимает, мне нужно перенаправить пользователя обратно на страницу «Main.aspx».
Вот код на моей базовой странице
override protected void OnInit(EventArgs e)
{
base.OnInit(e);
if (Context.Session != null)
{
if (Session.IsNewSession)
{
string cookie = Request.Headers["Cookie"];
if ((null != cookie) && (cookie.IndexOf("ASP.NET_SessionId") >= 0))
{
HttpContext.Current.Response.Redirect("Main.aspx", true);
return;
}
}
}
}
HttpContext.Current.Response.Redirect ("Main.aspx", true);
Я хочу, чтобы редирект прекратил выполнение BasePage и немедленно выпрыгнул.Проблема в том, что это не так.
Когда я запускаю в режиме отладки, он проходит шаг за шагом, как будто он не просто перенаправляет и уходит.Как я могу безопасно перенаправить?