Как мы можем использовать global.asax в asp.net? И что это?
101
В MSDN есть краткое описание назначения файла global.asax.
Фактически global.asax позволяет вам писать код, который запускается в ответ на события «системного уровня», такие как запуск приложения, завершение сеанса, возникновение ошибки приложения, без необходимости пытаться вставлять этот код в каждый страницу вашего сайта.
Вы можете использовать его, выбрав Добавить> Новый элемент> Глобальный класс приложения в Visual Studio. После добавления файла вы можете добавить код под любое из перечисленных событий (и созданных по умолчанию, по крайней мере, в Visual Studio 2008):
Есть и другие события, к которым вы также можете подключиться, например, «LogRequest».
Объяснение глобальных событий asax
Application_Init: запускается при инициализации или первом вызове приложения. Он вызывается для всех экземпляров объекта HttpApplication.
Application_Disposed: запускается непосредственно перед уничтожением приложения. Это идеальное место для очистки ранее использованных ресурсов.
Application_Error: срабатывает, когда в приложении обнаруживается необработанное исключение.
Application_Start: запускается при создании первого экземпляра класса HttpApplication. Он позволяет создавать объекты, доступные для всех экземпляров HttpApplication.
Application_End: запускается, когда уничтожается последний экземпляр класса HttpApplication. Он запускается только один раз за время существования приложения.
Application_BeginRequest: запускается при получении запроса приложения. Это первое событие, запускаемое для запроса, который часто является запросом страницы (URL-адресом), вводимым пользователем.
Application_EndRequest: последнее событие, инициированное для запроса приложения.
Application_PreRequestHandlerExecute: запускается перед тем, как платформа страницы ASP.NET начинает выполнять обработчик событий, такой как страница или веб-служба.
Application_PostRequestHandlerExecute: запускается, когда платформа страницы ASP.NET завершает выполнение обработчика событий.
Applcation_PreSendRequestHeaders: запускается до того, как платформа страницы ASP.NET отправит HTTP-заголовки запрашивающему клиенту (браузеру).
Application_PreSendContent: запускается до того, как платформа страницы ASP.NET отправит контент запрашивающему клиенту (браузеру).
Application_AcquireRequestState: запускается, когда платформа страницы ASP.NET получает текущее состояние (состояние сеанса), связанное с текущим запросом.
Application_ReleaseRequestState: запускается, когда платформа страницы ASP.NET завершает выполнение всех обработчиков событий. Это приводит к тому, что все модули состояния сохраняют данные своего текущего состояния.
Application_ResolveRequestCache: запускается, когда платформа страницы ASP.NET завершает запрос авторизации. Он позволяет модулям кеширования обслуживать запрос из кеша, минуя выполнение обработчика.
Application_UpdateRequestCache: запускается, когда платформа страницы ASP.NET завершает выполнение обработчика, чтобы позволить модулям кэширования хранить ответы, которые будут использоваться для обработки последующих запросов.
Application_AuthenticateRequest: срабатывает, когда модуль безопасности установил действительную идентификацию текущего пользователя. На этом этапе учетные данные пользователя были проверены.
Application_AuthorizeRequest: запускается, когда модуль безопасности проверяет, что пользователь может получить доступ к ресурсам.
Session_Start: запускается, когда новый пользователь посещает веб-сайт приложения.
Session_End: запускается, когда время сеанса пользователя истекает, завершается или он покидает веб-сайт приложения.
источник
http://msdn.microsoft.com/en-us/library/2027ewzw.aspx
источник
Global.asax - это файл приложения asp.net.
Это необязательный файл, который обрабатывает события, вызванные ASP.NET или HttpModules. В основном используется для событий начала и окончания сеанса и приложения, а также для обработки глобальных ошибок.
При использовании он должен находиться в корне веб-сайта.
источник
Корневой каталог веб-приложения имеет особое значение, и в этой папке может находиться определенный контент. У него может быть специальный файл под названием «Global.asax». Платформа ASP.Net использует содержимое файла global.asax и создает во время выполнения класс, унаследованный от HttpApplication. В течение всего времени существования приложения ASP.NET поддерживает пул экземпляров HttpApplication, производных от Global.asax. Когда приложение получает HTTP-запрос, платформа страницы ASP.Net назначает один из этих экземпляров для обработки этого запроса. Этот экземпляр отвечает за управление всем временем существования запроса, которому он назначен, и этот экземпляр можно повторно использовать только после того, как запрос будет завершен, когда он будет возвращен в пул. Члены экземпляра в Global.asax нельзя использовать для обмена данными между запросами, но можно использовать статический член. Глобальный.
источник
Global.asax можно использовать для обработки событий, возникающих из приложения. Эта ссылка дает хорошее объяснение: http://aspalliance.com/1114
источник