RequestNotification Enumeráció

Definíció

Azt jelzi, hogy egy kérés feldolgozása során HttpApplication mikor következnek be események és egyéb életciklus-események.

Ez a felsorolás támogatja a tagértékek bitenkénti kombinációját.

public enum class RequestNotification
[System.Flags]
public enum RequestNotification
[<System.Flags>]
type RequestNotification = 
Public Enum RequestNotification
Öröklődés
RequestNotification
Attribútumok

Mezők

Name Érték Description
BeginRequest 1

Azt jelzi, hogy az BeginRequest esemény a kéréshez lett létrehozva, és feldolgozásra kerül.

AuthenticateRequest 2

Azt jelzi, hogy az AuthenticateRequest esemény a kéréshez lett létrehozva, és feldolgozásra kerül.

AuthorizeRequest 4

Azt jelzi, hogy az AuthorizeRequest esemény a kéréshez lett létrehozva, és feldolgozásra kerül.

ResolveRequestCache 8

Azt jelzi, hogy az ResolveRequestCache esemény a kéréshez lett létrehozva, és feldolgozásra kerül.

MapRequestHandler 16

Azt jelzi, hogy az MapRequestHandler esemény a kéréshez lett létrehozva, és feldolgozásra kerül.

AcquireRequestState 32

Azt jelzi, hogy az AcquireRequestState esemény a kéréshez lett létrehozva, és feldolgozásra kerül.

PreExecuteRequestHandler 64

Az alkalmazás életciklusának egy pontjának jelzése, mielőtt a kérést feldolgozó kezelő leképezi.

ExecuteRequestHandler 128

Azt jelzi, hogy a kért erőforráshoz hozzárendelt kezelő meghívása folyamatban van a kérés feldolgozásához.

ReleaseRequestState 256

Azt jelzi, hogy az ReleaseRequestState esemény a kéréshez lett létrehozva, és feldolgozásra kerül.

UpdateRequestCache 512

Azt jelzi, hogy az UpdateRequestCache esemény a kéréshez lett létrehozva, és feldolgozásra kerül.

LogRequest 1024

Azt jelzi, hogy az LogRequest esemény a kéréshez lett létrehozva, és feldolgozásra kerül.

EndRequest 2048

Azt jelzi, hogy az EndRequest esemény a kéréshez lett létrehozva, és feldolgozásra kerül.

SendResponse 536870912

Azt jelzi, hogy a kérés feldolgozása befejeződött, és a válasz elküldése folyamatban van.

Példák

Az alábbi példa bemutatja, hogyan használható az RequestNotification enumerálás a tulajdonsággal annak CurrentNotification meghatározására, hogy az aktuális HttpApplication példány melyik eseménye dolgozza fel a kérést.

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

Megjegyzések

Az RequestNotification enumerálás az CurrentNotification osztály tulajdonságával HttpContext együtt annak meghatározására szolgál, hogy a folyamat melyik eseménye van jelenleg feldolgozva. Annak megállapításához, hogy a példány adott eseményének összes kezelője befejeződött-e a HttpApplication feldolgozással, használja a tulajdonságot IsPostNotification .

A RequestNotification típust a .NET Framework 3.5-ben vezetik be. További információ: Verziók és függőségek.

A következőre érvényes:

Lásd még