Kuldeep_Gupta15 Ответов: 1

Ошибка при перенаправлении на страницу входа в систему внутри global .asax (событие session_end)


protected void Session_End(object sender, EventArgs e)
       {
            Response.Redirect("Default.aspx");
       }



Я использую приведенный выше код для перенаправления на страницу по умолчанию, когда сеанс истекает.
Но он бросает исключение.

An exception of type 'System.Web.HttpException' occurred in System.Web.dll but was not handled in user code

Additional information: Response is not available in this context.



Пожалуйста помочь .

заранее спасибо.

Что я уже пробовал:

protected void Session_End(object sender, EventArgs e)
        {
             Response.Redirect("Default.aspx");
        }

1 Ответов

Рейтинг:
0

F-ES Sitecore

Событие завершения сеанса не запускается из запроса страницы, поэтому вы не можете получить доступ к объектам запроса или ответа. Подумайте о it....my поскольку я закрыл свой браузер 20 минут назад, что вы ожидаете от response. redirect?


Kuldeep_Gupta15

Спасибо за ответ. На самом деле я хочу перенаправить на страницу входа автоматически, как только сеанс истечет.
Так есть ли какой-нибудь способ сделать это ?

Заранее спасибо

F-ES Sitecore

Я предполагаю, что вы используете свой собственный код входа и т. д., а не членство или удостоверение личности, и у них обоих есть конфигурация и т. д., которая обрабатывает это. Вам нужно забыть о начале и завершении сеансов, сеансы не связаны с аутентификацией. Вам нужно использовать событие AuthenticateRequest в файле global. asax, чтобы узнать, вошел ли пользователь в систему, а если нет, то сделать перенаправление на вашу страницу входа.

http://www.techrepublic.com/article/working-with-the-aspnet-globalasax-file/