RequestNotification 열거형
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
HttpApplication 요청이 처리되는 동안 이벤트 및 다른 수명 주기 이벤트가 발생하는 경우를 나타냅니다.
이 열거형은 멤버 값의 비트 조합을 지원합니다.
public enum class RequestNotification
[System.Flags]
public enum RequestNotification
[<System.Flags>]
type RequestNotification =
Public Enum RequestNotification
- 상속
- 특성
필드
AcquireRequestState | 32 | 요청에 대해 AcquireRequestState 이벤트가 발생하여 처리 중임을 나타냅니다. |
AuthenticateRequest | 2 | 요청에 대해 AuthenticateRequest 이벤트가 발생하여 처리 중임을 나타냅니다. |
AuthorizeRequest | 4 | 요청에 대해 AuthorizeRequest 이벤트가 발생하여 처리 중임을 나타냅니다. |
BeginRequest | 1 | 요청에 대해 BeginRequest 이벤트가 발생하여 처리 중임을 나타냅니다. |
EndRequest | 2048 | 요청에 대해 EndRequest 이벤트가 발생하여 처리 중임을 나타냅니다. |
ExecuteRequestHandler | 128 | 요청을 처리하기 위해 요청된 리소스에 매핑된 처리기를 호출하고 있음을 나타냅니다. |
LogRequest | 1024 | 요청에 대해 LogRequest 이벤트가 발생하여 처리 중임을 나타냅니다. |
MapRequestHandler | 16 | 요청에 대해 MapRequestHandler 이벤트가 발생하여 처리 중임을 나타냅니다. |
PreExecuteRequestHandler | 64 | 요청을 처리하는 처리기 바로 앞에 있는 애플리케이션 수명 주기의 지점이 매핑됨을 나타냅니다. |
ReleaseRequestState | 256 | 요청에 대해 ReleaseRequestState 이벤트가 발생하여 처리 중임을 나타냅니다. |
ResolveRequestCache | 8 | 요청에 대해 ResolveRequestCache 이벤트가 발생하여 처리 중임을 나타냅니다. |
SendResponse | 536870912 | 요청의 처리가 완료되어 응답이 전송되고 있음을 나타냅니다. |
UpdateRequestCache | 512 | 요청에 대해 UpdateRequestCache 이벤트가 발생하여 처리 중임을 나타냅니다. |
예제
다음 예제에서는 사용 하는 방법을 보여 줍니다 합니다 RequestNotification 인 열거형 합니다 CurrentNotification 현재 이벤트를 확인 하는 속성 HttpApplication 인스턴스는 요청을 처리 합니다.
using System;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
// Module that demonstrates one event handler for several events.
namespace Samples
{
public class ModuleExampleTestCS : IHttpModule
{
public ModuleExampleTestCS()
{
// Constructor
}
public void Init(HttpApplication app)
{
app.AuthenticateRequest += new EventHandler(App_Handler);
app.PostAuthenticateRequest += new EventHandler(App_Handler);
app.LogRequest += new EventHandler(App_Handler);
app.PostLogRequest += new EventHandler(App_Handler);
}
public void Dispose()
{
}
// One handler for AuthenticationRequest, PostAuthenticateRequest,
// LogRequest, and PostLogRequest events
public void App_Handler(object source, EventArgs e)
{
HttpApplication app = (HttpApplication)source;
HttpContext context = app.Context;
if (context.CurrentNotification == RequestNotification.AuthenticateRequest)
{
if (!context.IsPostNotification)
{
// Put code here that is invoked when the AuthenticateRequest event is raised.
}
else
{
// PostAuthenticateRequest
// Put code here that runs after the AuthenticateRequest event completes.
}
}
if (context.CurrentNotification == RequestNotification.LogRequest)
{
if (!context.IsPostNotification)
{
// Put code here that is invoked when the LogRequest event is raised.
}
else
{
// PostLogRequest
// Put code here that runs after the LogRequest event completes.
}
}
}
}
}
Imports System.Data
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
' Module that demonstrates one event handler for several events.
Namespace Samples
Public Class ModuleExampleTestVB
Implements IHttpModule
Public Sub New()
' Constructor
End Sub
Public Sub Init(ByVal app As HttpApplication) Implements IHttpModule.Init
AddHandler app.AuthenticateRequest, AddressOf Me.App_Handler
AddHandler app.PostAuthenticateRequest, AddressOf Me.App_Handler
AddHandler app.LogRequest, AddressOf Me.App_Handler
AddHandler app.PostLogRequest, AddressOf Me.App_Handler
End Sub
Public Sub Dispose() Implements IHttpModule.Dispose
End Sub
' One handler for AuthenticationRequest, PostAuthenticateRequest,
' LogRequest, and PostLogRequest events
Public Sub App_Handler(ByVal source As Object, ByVal e As EventArgs)
Dim app As HttpApplication = CType(source, HttpApplication)
Dim context As HttpContext = app.Context
If (context.CurrentNotification = RequestNotification.AuthenticateRequest) Then
If Not (context.IsPostNotification) Then
' Put code here that is invoked when the AuthenticateRequest event is raised.
Else
' PostAuthenticateRequest
' Put code here that runs after the AuthenticateRequest event completes.
End If
End If
If (context.CurrentNotification = RequestNotification.LogRequest) Then
If Not (context.IsPostNotification) Then
' Put code here that is invoked when the LogRequest event is raised.
Else
' PostLogRequest
' Put code here that runs after the LogRequest event completes.
End If
End If
End Sub
End Class
End Namespace
설명
RequestNotification 열거형을 사용 하 여 사용 합니다 CurrentNotification 의 속성은 HttpContext 파이프라인에서 어떤 이벤트가 현재 처리 중인 확인 하려면 클래스. 시기를 결정 하의 특정 이벤트에 대 한 모든 처리기를 HttpApplication 인스턴스 처리를 완료 한, 사용 된 IsPostNotification 속성.
형식은 RequestNotification .NET Framework 3.5에 도입됩니다. 자세한 내용은 버전 및 종속성을 참조하세요.
적용 대상
추가 정보
.NET