https://technet.microsoft.com/en-us/library/ms143221(v=sql.105).aspx |
Конфигурирование проекта. Глобальные объекты
Файл Global.asax, объекты приложения и сеанса
Еще одним глобальным понятием является обработка событий уровня приложения. Это события вроде: "на одной из страниц приложения началась обработка запроса" или "на какой-то странице произошла ошибка". Такие события обрабатываются в коде файла global.asax.
Добавьте в проект новый файл типа Global Application Class. Это можно сделать через меню Website, или щелкнув правой кнопкой мыши на названии проекта в Visual Studio, или через меню File —> New в WebMatrix.
Файл Global.asax — это текстовый файл, который хранится в корневой папке приложения ASP .NET. В проекте может быть только один Global.asax. Он содержит объекты, события, переменные уровня приложения. При создании файла в нем находятся функции, которые должны выполняться при наступлении любого из пяти событий, описанных в таблице.
События для файла Global.asax
Событие | Условия наступления |
Application_Start | Первая страница приложения открывается любым пользователем |
Application_End | Работа приложения завершается |
Session_Start | Посетитель активизирует приложение |
Session_End | Пользователь покидает приложение или не запрашивает страницу в течение некоторого периода времени |
Application_Error | При выполнении приложения возникает необработанная ошибка |
Данные события предназначены для выполнения кода или создания переменных, которые существуют до тех пор, пока существует программа или пока посетитель пребывает на узле. За счет этого можно сохранять регистрационную информацию, неизменные данные для web-узла или постоянные соединения с источниками данных:
<%@ Application Language="C#" %> <script runat="server"> void Application_Start(object sender, EventArgs e) { // Code that runs on application startup } void Application_End(object sender, EventArgs e) { // Code that runs on application shutdown } void Application_Error(object sender, EventArgs e) { // Code that runs when an unhandled error occurs } void Session_Start(object sender, EventArgs e) { // Code that runs when a new session is started } void Session_End(object sender, EventArgs e) { // Code that runs when a session ends. // Note: The Session_End event is raised only when the sessionstate mode // is set to InProc in the Web.config file. If session mode is set to StateServer // or SQLServer, the event is not raised. } </script>
В приложении Starter Kit, например в Application_Start, создаются роли администратора и друга.