Події об’єктів Application і Session

Код, що обробляє події об'єктів Application і Session, можна помістити у файл Global.asax. Події Application будуть використовуватися для ініціалізації об'єктів і даних, які повинні бути доступними всім поточним сеансам Web-додатка. Події Session служать для ініціалізації даних, які потрібно зберігати в межах одного сеансу, не роблячи їх доступними іншим сеансам. У таблиці перераховані оброблювачі різних подій Application із вказівкою обставин, при яких вони викликаються.

Таблиця.... Оброблювачі подій Application

Ім'я Коли викликається
Application_Start Перший користувач відкрив початкову сторінку Web-додатка
Application_End З додатком більше ніхто не працює
Application_BeginRequest На початку кожного запиту до сервера. Запит відбувається щоразу, коли браузер відкриває яку-небудь сторінку додатка
Application_EndRequest Наприкінці кожного запиту до сервера
Session_Start Новий користувач відкрив початкову сторінку додатка
Session_End Користувач покинув додаток, закривши браузер, або наступив тайм-аут по бездіяльності

У додатках Web Forms сеанс (session) представляє унікальний екземпляр браузера. Якщо користувач запустить у себе на комп'ютері кілька екземплярів браузера і відкриє в кожному з них сторінки Web-додатка, для кожного екземпляра браузера буде створений окремий сеанс.

Щоб побачити події Application і Session у дії, додайте у файл Global.asax проекту Web Forms наступний код:

Protected void Application_Start(Object sender, EventArgs e)

{

// Оголосити змінні станів Application

Application["AppCount"] = 0;

Application["SessCount"] = 0;

// Зареєструвати запуск додатка.

Application["AppCount"] = (int)Application["AppCount"] + 1;

}

Protected void Session_Start(Object sender, EventArgs e)

{

// Підрахувати сеанси

Application["SessCount"] = (int)Application["SessCount"] + 1;

// Показати число екземплярів додатка.

Response.Write("Number of applications: " + Application["AppCount"] + "<br>");

// Показати число сеансів.

Response.Write("Number of sessions: " + Application["SessCount"] + "<br>");

}


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: