Веб-страницы ASP.NET — глобальные страницы
Эта глава посвящена глобальным страницам AppStart и PageStart.
Перед веб-запуском: _AppStart
Большая часть кода на стороне сервера написана внутри отдельных веб-страниц. Например, если веб-страница содержит форму ввода, веб-страница обычно содержит серверный код для чтения данных.
Однако, создав страницу с именем _AppStart в корне вашего сайта, вы можете выполнить код запуска до запуска сайта. Если эта страница существует, ASP.NET запускает ее при первом запросе любой страницы на сайте.
Типичное использование _AppStart — код запуска и инициализация глобальных значений, таких как счетчики и глобальные имена.
Примечание 1. _AppStart должен иметь то же расширение файла, что и ваши веб-страницы, например: _AppStart.cshtml.
Примечание 2: _AppStart имеет префикс подчеркивания. Из-за этого файлы не могут быть просмотрены напрямую.
Перед каждой страницей: _PageStart
Точно так же, как _AppStart запускается перед запуском вашего сайта, вы можете написать код, который запускается перед любой страницей в каждой папке.
Для каждой папки в вашем веб-сайте вы можете добавить файл с именем _PageStart.
Типичное использование _PageStart — настройка страницы макета для всех страниц в папке или проверка того, что пользователь вошел в систему перед запуском страницы.
Как это работает?
На следующей диаграмме показано, как это работает:
Когда приходит запрос, ASP.NET проверяет, существует ли _AppStart. Если да, и это первый запрос к сайту, запускается _AppStart.
Затем ASP.NET проверяет, существует ли _PageStart. Если это так, _PageStart запускается перед запрошенной страницей.
Если вы включаете вызов RunPage() внутри _PageStart, вы указываете, где вы хотите запустить запрошенную страницу. Если нет, _PageStart запускается перед запрошенной страницей.