Коллекция StaticObjects сеанса
Коллекция StaticObjects содержит все объекты, созданные с помощью тега <OBJECT> в области объекта сеанса. Эту коллекцию можно использовать для определения значения определенного свойства объекта или для перебора коллекции и получения всех свойств для всех объектов.
грамматика
Параметры
Session.StaticObjects(Key)
Ключ
Атрибут, который требуется получить.
Примечание. Используйте структуру управления циклом для перебора ключевых слов в коллекции StaticObjects. См. пример ниже.
<%
Тусклый объект
Для каждого объекта в Session.StaticObjects
Response.write(objproperty & " : " & Session.StaticObjects(objprop) & "<BR>")
Следующий
%>
Коллекция содержания сессии
Коллекция Session.contents включает все элементы, созданные для этого сеанса без использования тега <OBJECT>. Эту коллекцию можно использовать для определения значения указанного элемента сеанса или для перебора коллекции и получения списка всех элементов в сеансе.
грамматика
Параметр
Session.Contents(Key)
Ключ
Имя свойства, которое нужно получить.
Примечание. Вы можете использовать структуру управления циклом для перебора ключевых слов в коллекции Contents. Следующий пример демонстрирует этот процесс.
<%
Дим-сесситем
Для каждого сеанса в Session.Contents
Response.write(sessitem & " : " & Session.Contents(sessitem) & "<BR>")
Следующая
кодовая страница
%>
Свойство CodePage определяет кодовую страницу, которая будет использоваться для отображения динамического содержимого.
грамматика
Параметр
Session.CodePage(=Кодовая страница)
Кодовая страница
Это целое число без знака, представляющее действительную кодовую страницу системы, в которой работает механизм сценариев ASP.
Кодовая страница аннотации — это набор символов, который может включать цифры, знаки препинания и другие буквы. Для разных языков и регионов могут использоваться разные кодовые страницы. Например, кодовая страница ANSI 1252 используется для американского английского языка, а кодовая страница OEM 932 — для японского кандзи.
Кодовая страница — это таблица символов, которая отображает символы в однобайтовые или многобайтовые значения. Многие кодовые страницы используют символы от 0x00 до 0x7F в наборе символов ASCII.
Покидать
Метод Abandon удаляет все объекты, хранящиеся в объекте Session, и освобождает источник этих объектов. Если вы не вызовете метод Abandon явно, сервер удалит эти объекты по истечении времени сеанса.
грамматика
Аннотация
Session.Abandon
При вызове метода Abandon текущий объект сеанса будет удален по порядку, но фактически объект не будет удален до тех пор, пока не будут обработаны все команды сценария на текущей странице. Это означает, что при вызове Abandon переменные, хранящиеся в объекте Session, могут быть доступны на текущей странице, но не на последующих веб-страницах.
Например, в следующем сценарии третья строка печатает значение Мэри. Это связано с тем, что объект сеанса не удаляется до того, как сервер завершит обработку сценария.
<%
Сеанс.Отказаться
Session("MyName") = "Мэри"
Response.Write(Session("MyName"))
%>
Если вы обратитесь к переменной MyName на последующих веб-страницах, вы обнаружите, что она пуста. Это связано с тем, что когда страница, содержащая предыдущий пример, завершила обработку, MyName был удален вместе с предыдущим объектом Session.
Когда сеанс завершается и открываются последующие веб-страницы, сервер создает новый объект сеанса. Вы можете хранить переменные и объекты в новом объекте сеанса.
Пример В следующем примере состояние сеанса освобождается, когда сервер завершает обработку текущей страницы.
<% Session.Abandon %>
LCID
Атрибут LCID определяет идентификатор местоположения, используемый для отображения динамического контента.
грамматика
Параметр
Session.LCID(=LCID)
LCID
Эффективная идентификация сайта.
Комментарий
LCID указывает идентификатор сайта, который представляет собой международную стандартную аббревиатуру, которая уникальным образом идентифицирует сайт, определенный определенной системой.
идентификатор сеанса
Свойство SessionID возвращает идентификатор сеанса пользователя. При создании сеанса сервер генерирует отдельный идентификатор для каждого сеанса. Идентификатор сеанса возвращается как длинный тип данных.
грамматика
Session.SessionID
Примечание. Не используйте свойство SessionID для создания первичных ключей для приложений баз данных. Это связано с тем, что при перезапуске веб-сервера некоторые значения SessionID могут быть такими же, какими они были до завершения работы сервера. Вместо этого вы можете использовать тип данных столбца с автоматическим приращением, например IDENTITY в Microsoft® SQL Server или COUNTER в Microsoft® Access.
Сеанс_OnStart
Событие Session_OnStart возникает, когда сервер создает новый сеанс. Сервер обрабатывает сценарий перед выполнением запрошенной страницы. Событие Session_OnStart — лучшее время для установки переменных сеанса, поскольку они устанавливаются до доступа к какой-либо странице. Все встроенные объекты (Приложение, ObjectContext, Запрос, Ответ, Сервер и Сеанс) можно использовать и на них ссылаться в сценарии события Session_OnStart.
грамматика
<SCRIPT LANGUAGE=ScriptLanguage RUNAT=Server> Sub Session_OnStart .End Sub 'от aspxuexi.com
</SCRIPT>
Параметры.
Язык сценария
Указывает язык сценариев, используемый для сценария события. Это может быть любой язык, поддерживающий сценарии, например VBScript или JScript. Если у вас есть несколько событий, использующих один и тот же язык сценариев, вы можете организовать их с помощью набора тегов <SCRIPT>.
Пример. Хотя объект Session сохранится, если событие Session_OnStart содержит вызов метода Redirect или End, сервер прекратит обработку файла Global.asa и запустит сценарий в файле, который инициировал событие Session_OnStart.
Например, чтобы гарантировать, что пользователь всегда запускает сеанс при открытии определенной веб-страницы, вы можете вызвать метод Redirect в событии Session_OnStart. Когда пользователь входит в приложение, сервер создает для пользователя сеанс и обрабатывает сценарий события Session_OnStart. Вы можете включить в это событие сценарий, чтобы проверить, является ли страница, которую открывает пользователь, стартовой страницей, а если нет, поручить пользователю вызвать метод Response.Redirect для запуска страницы. Его демонстрация показана на следующем примере.
<SCRIPT RUNAT=Язык сервера=VBScript>
SubSession_OnStart
' Убедитесь, что новые пользователи начинают с правильных
'страница приложения ASP' от aspxuexi.com.
' Заменяем значение, указанное в startPage ниже
' с виртуальным путем к вашему приложению
' стартовая страница.
startPage = "/MyApp/StartHere.asp"
currentPage = Request.ServerVariables("SCRIPT_NAME")
' Выполняем сравнение без учета регистра, и если они
' не совпадают, отправьте пользователя на стартовую страницу.
if strcomp(currentPage,startPage,1) then Response.Redirect(startPage) end ifEnd Sub</SCRIPT>
Приведенный выше пример будет работать только в браузерах, поддерживающих файлы cookie. Поскольку браузеры, не поддерживающие файлы cookie, не могут вернуть файл cookie SessionID, сервер создает новый сеанс каждый раз, когда пользователь запрашивает веб-страницу. Таким образом, при каждом запросе сервер обрабатывает скрипт Session_OnStart и перенаправляет пользователя на стартовую страницу. Если вы используете приведенный ниже сценарий, рекомендуется разместить на стартовой странице уведомление, сообщающее пользователям, что для сайта требуется браузер с поддержкой файлов cookie.
Примечание. Обратите внимание, что любой сценарий события Session_OnStart после метода Redirect не будет выполнен. Поэтому метод Redirect следует вызывать в конце сценария события. Его демонстрация показана на следующем примере.
<SCRIPT LANGUAGE=VBScript RUNAT=Сервер>
SubSession_OnStart
'Скрипт инициализации сеанса
' от aspxuexi.com
Response.Redirect "http:/server/app/StartHere.asp"
Конец субтитра
</СКРИПТ>
В приведенном выше примере метод Redirect скрывает весь текст, отображаемый клиенту во время выполнения сценария инициализации сеанса.
Session_OnEnd
Событие Session_OnEnd возникает, когда сеанс прерывается или истекает время ожидания. Среди встроенных объектов сервера доступны только объекты Приложение, Сервер и Сеанс.
грамматика
Параметры
Sub Session_OnEnd
.
Язык сценария
Указывает язык сценариев, используемый для сценария события. Это может быть любой язык, поддерживающий сценарии, например VBScript или JScript. Если у вас есть несколько событий, использующих один и тот же язык сценариев, вы можете организовать их с помощью набора тегов <SCRIPT>.
Примечание. Метод MapPath нельзя вызвать в сценарии Session_OnEnd.
Тайм-аут
Свойство Timeout определяет период ожидания в минутах для объекта Session приложения. Если пользователь не обновит или не запросит страницу в течение этого времени ожидания, сеанс будет завершен.
грамматика
Параметр
Session.Timeout[=nMinutes]
нминут
Указывает количество минут, по истечении которых сеанс будет бездействовать, чтобы сервер автоматически завершил сеанс. Значение по умолчанию — 15 минут.