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가 요청된 페이지보다 먼저 실행됩니다.

_PageStart 내부에 RunPage() 호출을 포함하는 경우 요청된 페이지를 실행할 위치를 지정합니다. 그렇지 않은 경우 _PageStart는 요청된 페이지보다 먼저 실행됩니다.