RequestNotification Enumeráció
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
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
- 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.