asp.net: как перенаправить на домашнюю страницу, если для пользователя нет сеанса? - PullRequest
0 голосов
/ 04 февраля 2011

У меня есть веб-приложение с множеством страниц, и для работы большинства из них требуются переменные сеанса.

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

Какой лучший способ сделать это?должен ли я вместо этого использовать session_end?

простое решение для этого было бы лучше.

РЕДАКТИРОВАТЬ: поэтому я предполагаю, что главная страница - это место, куда я хочу добавить это?

Ответы [ 3 ]

2 голосов
/ 04 февраля 2011

Не могли бы вы просто пойти:

if(Session.Count == 0)
{
    // no session variables
}

1 голос
/ 04 февраля 2011

Вы можете получить количество переменных сеанса и, если оно равно 0, то перенаправить.

If Session.Count = 0 Then
    'Redirect
End If
0 голосов
/ 04 февраля 2011

Сессия создается, как только пользователь заходит на ваш сайт. Чтобы определить, был ли сеанс создан так, как вы этого хотели, установите свойство в сеансе, например

Session["is_valid"] = true

Проверьте на других страницах, если это установлено, и если нет, Page.Redirect пользователю на соответствующую страницу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...