|
global.asax начало всех начал
Наверное многие из Вас хотели обработать события которые возникают в момент первого посещения сайта пользователем.
Например, вы хотите знать когда пользователь зашел или когда вышел или просто факт того что он был на сайте и тд.
Как же это сделать?
Но начнем не с пользователя а с приложения.
Как вы помните в совокупности все страницы ASP.NET входят в приложение
оно загружается как только к ниму происходит обращение.
Для того чтобы узнать это и другие события приложения используется файл global.asax
Добавляем файл в проект


Если вы откроете данный файл, то увидите что в нем уже есть шаблоны для 5 событий
1. Application_start отрабатывает когда загружается приложение
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
}
|
2. Application_End Приложение завершается
3. Application_Error ошибка в приложении
4. Session_Start - начинается сессия для нового пользователя
5. Session_End - Завершается сессия
Надо отметить что метод Session_End отрабатывает только тогда когда в настройках приложения Session State выставлено в InProc.
Давайте сделаем пример в котором будем подсчитывать текущее количество пользователей на сайте
Для этого в обработчик события Session Start добавим увеличение счетчика пользователей
а в Session End соответственно уменьшение
полный код будет выглядеть так
void Application_Start(object sender, EventArgs e)
{
Application["users"] = 0;
}
void Application_End(object sender, EventArgs e)
{
}
void Application_Error(object sender, EventArgs e)
{
}
void Session_Start(object sender, EventArgs e)
{
Application["users"] = Convert.ToInt32(Application["users"]) + 1;
}
void Session_End(object sender, EventArgs e)
{
Application["users"] = Convert.ToInt32(Application["users"]) - 1;
}
|
Предыдущая стр.   
Оглавление   
Следующая стр.
Средняя оценка:     (1 - 1 голосов) Для оценки необходимо зарегистрироваться
Только зарегистрировавшиеся пользователи могут оставлять комментарии
|
|