ASP.NET 페이지 수명 주기 개요(소결)

ASP.NET 페이지 가 실 행 될 때 이 페이지 는 수명 주 기 를 거 쳐 수명 주기 에 일련의 처리 절 차 를 수행 합 니 다.이러한 절 차 는 초기 화,실례 화 컨트롤,복원 과 유지 상태,이벤트 처리 프로그램 코드 실행 및 구현 을 포함한다.페이지 의 생명 주 기 를 이해 하 는 것 은 매우 중요 합 니 다.그러면 적당 한 생명 주기 단계 에서 코드 를 작성 하여 기대 하 는 효 과 를 얻 을 수 있 습 니 다.또한 사용자 정의 컨트롤 을 개발 하려 면 페이지 수명 주 기 를 숙지 하고 컨트롤 을 정확하게 초기 화하 고 보기 상태 데이터 로 컨트롤 속성 을 채 우 며 모든 컨트롤 행동 논 리 를 실행 해 야 합 니 다.(컨트롤 의 생명 주 기 는 페이지 의 생명 주 기 를 기반 으로 하지만 페이지 에서 발생 하 는 컨트롤 이벤트 가 단독 ASP.NET 페이지 에서 사용 할 수 있 는 이벤트 보다 많 습 니 다.)
일반 페이지 수명 주기 단계
일반적으로 페이지 는 다음 표 개술 의 각 단 계 를 거 쳐 야 한다.페이지 라 이 프 사이클 단 계 를 제외 하고 요청 전후 에 나타 나 는 응용 프로그램 단계 도 있 지만 이 단 계 는 페이지 에 특정 되 지 않 습 니 다.더 많은 정보 에 대해 서 는ASP.NET 응용 프로그램 수명 주기 개요참조 하 시기 바 랍 니 다.
단계 설명
페이지 요청
페이지 요청 은 페이지 수명 주기 가 시작 되 기 전에 발생 합 니 다.사용자 요청 페이지 에서 ASP.NET 은 페이지 를 분석 하고 컴 파일 해 야 하 는 지(페이지 의 수명 주 기 를 시작 합 니 다),또는 페이지 를 실행 하지 않 은 상태 에서 페이지 의 캐 시 버 전 을 보 낼 수 있 는 지 여 부 를 확인 합 니 다.
시작 하 다
시작 단계 에서 페이지 속성 을 설정 합 니 다.예 를 들 어RequestResponse.이 단계 에서 페이지 는 요청 이 리 턴 요청 인지 새 요청 인지 확인 하고IsPostBack속성 을 설정 합 니 다.또한 시작 단계 동안 페이지 의UICulture속성 도 설정 합 니 다.
페이지 초기 화
페이지 초기 화 기간 에 페이지 의 컨트롤 을 사용 할 수 있 으 며,각 컨트롤 의UniqueID속성 을 설정 할 수 있 습 니 다.그 밖 에 모든 주 제 는 페이지 에 적 용 될 것 이다.현재 요청 이 리 턴 요청 이 라면 리 턴 데 이 터 를 불 러 오지 않 았 고 컨트롤 속성 값 은 보기 상태의 값 으로 복원 되 지 않 았 습 니 다.
로드
불 러 오 는 동안 현재 요청 이 리 턴 요청 이 라면 보기 상태 와 컨트롤 상태 에서 복 구 된 정보 로 컨트롤 속성 을 불 러 옵 니 다.
검증 하 다.
검증 기간 에 모든 검증 프로그램 컨트롤Validate방법 을 호출 합 니 다.이 방법 은 각 검증 프로그램 컨트롤 과 페이지 의IsValid속성 을 설정 합 니 다.
리 턴 이벤트 처리
요청 이 리 턴 요청 이 라면 모든 이벤트 처리 프로그램 을 호출 합 니 다.
나타나다
보 여 주 는 동안 보기 상 태 는 페이지 에 저 장 됩 니 다.그리고 페이지 는 각 컨트롤 을 호출 하여 보 여 주 는 출력 을 페이지 의 Response 속성OutputStream에 제공 합 니 다.
마 운 트 해제
페이지 를 완전히 보 여 주 며 클 라 이언 트 에 페이지 를 보 내 고 버 리 려 고 할 때 마 운 트 해제 합 니 다.이 때,페이지 속성(예:Response 와 Request)을 마 운 트 해제 하고 청 소 를 실행 합 니 다.
라 이 프 사이클 이벤트
페이지 라 이 프 사이클 의 모든 단계 에서 페이지 는 자신의 코드 를 실행 하여 처리 할 수 있 는 사건 을 일 으 킬 것 입 니 다.컨트롤 이벤트 에 대해 서 는 설명 방식 으로 속성 을 사용 합 니 다(예:  )또는 코드 를 사용 하 는 방식 으로 이벤트 처리 프로그램 을 이벤트 에 연결 할 수 있 습 니 다.
페이지 는 또한 자동 이벤트 연결 을 지원 합 니 다.즉,ASP.NET 은 특정한 이름 을 가 진 방법 을 찾 고 특정한 사건 을 일 으 킬 때 자동 으로 이 방법 을 실행 합 니 다.@ Page명령 의 AutoEventWireup 속성 이 true(또는 이 속성 이 정의 되 지 않 으 면 기본 값 으로 true)로 설정 되면 페이지 이 벤트 는 Page 사용 에 자동 으로 연 결 됩 니 다.이벤트 이름 을 지정 하 는 방법,예 를 들 어 PageLoad 와 PageInit。자동 이벤트 연결 에 대한 더 많은 정 보 는ASP.NET 웹 서버 컨트롤 이벤트 모드형 을 참조 하 시기 바 랍 니 다.
다음 표 는 가장 자주 사용 하 는 페이지 수명 주기 사건 을 보 여 줍 니 다.실제 사건 은 열 거 된 사건 보다 많다.그러나 이들 은 대부분의 페이지 처리 방안 에 사용 되 지 않 는 다.주로 ASP.NET 웹 페이지 의 서버 컨트롤 에 의 해 사용 되 며 그 자 체 를 초기 화하 고 보 여 줍 니 다.자신의 ASP.NET 서버 컨트롤 을 작성 하려 면 이 단 계 를 자세히 알 아야 합 니 다.사용자 정의 컨트롤 생 성 에 대한 정 보 는사용자 정의 ASP.NET 서버 컨트롤 개발을 참조 하 십시오.
이벤트
Page_PreInit

  • 쓰다 IsPostBack 속성 은 이 페이지 를 처음 처리 하 는 지 확인 합 니 다.

  • 동적 컨트롤 을 만 들 거나 다시 만 듭 니 다.

  • 동적 설정 메 인 제어 페이지.

  • 동적 설정  Theme  속성

  • 프로필 속성 값 을 읽 거나 설정 합 니 다.
    요청 이 리 턴 요청 이 라면 컨트롤 의 값 이 보기 상태 에서 복원 되 지 않 았 음 을 주의 하 십시오.이 단계 에서 컨트롤 속성 을 설정 하면 다음 단계 에서 값 이 바 뀔 수 있 습 니 다.
  • Page_Init

  • 컨트롤 속성 을 읽 거나 초기 화 합 니 다.
  • Page_Load

  • 컨트롤 속성 을 읽 고 업데이트 합 니 다.
  • Control events
    프로그램 에 지정 한 처 리 를 수행 합 니 다:

  • 페이지 에 인증 프로그램 컨트롤 이 포함 되 어 있 으 면 모든 처 리 를 수행 하기 전에 페이지 와 각 인증 컨트롤 을 검사 하 십시오. IsValid 속성

  • 특정 이벤트 처리  Button  컨트롤의  Click  사건
  • Page_PreRender

  • 페이지 의 내용 을 마지막 으로 변경 합 니 다.
  • Page_Unload
    마지막 청소 작업 을 수행 합 니 다.다음 을 포함 할 수 있 습 니 다.

  • 열 린 파일 과 데이터베이스 연결 을 닫 습 니 다.

  • 로그 기록 이나 요청 한 작업 을 수행 합 니 다.
    마 운 트 해제 단계 에서 페이지 와 컨트롤 이 표시 되 었 기 때문에 응답 흐름 을 변경 할 수 없습니다.호출 방법 을 시도 하면 Response.Write 방법)이 페이지 는 이상 을 일 으 킬 것 이다.
  • 기타 페이지 수명 주기 주의사항
    페이지 수명 주기 에 대한 다음 과 같은 추가 정 보 를 주의 하 십시오.

  • 각 ASP.NET 서버 컨트롤 은 자신의 수명 주 기 를 가지 고 있 으 며,이 수명 주 기 는 페이지 수명 주기 와 유사 합 니 다.예 를 들 어 해당 페이지 이벤트 기간 에 컨트롤 을 호출 합 니 다. Init 화해시키다 Load 방법페이지 에 컨트롤 이 포함 되 어 있 으 면 먼저 컨트롤 을 호출 합 니 다. Init 방법 Init 방법단,컨트롤 을 호출 할 것 입 니 다. Load 방법 전에 페이지 를 먼저 호출 한 Load 방법

  • 컨트롤 의 이 벤트 를 처리 함으로써 컨트롤 의 외관 이나 내용 을 사용자 정의 할 수 있 습 니 다.예 를 들 어 모든 컨트롤 이 Init、Load 화해시키다 Unload 사건 이지 만 페이지 개발 자 들 은 이 사건 들 을 처리 하지 않 는 다.컨트롤 에 특 정 된 이 벤트 를 처리 하 는 것 입 니 다.예 를 들 어 Button 컨트롤의 Click 이벤트  ListBox  컨트롤의  SelectedIndexChanged  사건어떤 경우 에 도 컨트롤 을 처리 해 야 할 수도 있 습 니 다. DataBinding 혹시 DataBound 사건더 많은 정 보 는 각 컨트롤 의 유형 참고 주제 와사용자 정의 ASP.NET 서버 컨트롤 개발를 참조 하 시기 바 랍 니 다.

  • 페이지 로 인 한 사건 을 처리 하 는 것 외 에 페이지 의 기본 클래스 를 다시 쓸 수 있 는 방법 도 있다.예 를 들 어 페이지 를 다시 쓸 수 있 습 니 다.  InitializeCulture  지역 적 정 보 를 동적 으로 설정 할 수 있 도록 방법.주의 하 다 Page_event 문법 이 이벤트 처리 프로그램 을 만 들 때 암시 적 호출 기 를 실현 하기 때문에 방법 에서 호출 할 필요 가 없습니다.예 를 들 어 만 들 든 말 든 Page_Load 방법 은 항상 페이지 기본 클래스 를 호출 합 니 다.  방법하면,만약,만약... override 키워드 오 버 라 이 드   방법 은 반드시 명시 적 호출 기 방법 이 있어 야 한다.예 를 들 어 페이지 에 다시 쓰 면   방법  .Load(Visual Basic 에서 My.Load)실행 기반 으로 이 루어 집 니 다.
  •  이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

    좋은 웹페이지 즐겨찾기