HttpContext.CurrentNotification Proprietà

Definizione

Ottiene un valore RequestNotification che indica l'evento HttpApplication attualmente in elaborazione.

public System.Web.RequestNotification CurrentNotification { get; }

Valore della proprietà

RequestNotification

Uno dei valori di RequestNotification.

Eccezioni

L'operazione richiede la modalità pipeline integrata in IIS 7.0 e almeno il .NET Framework versione 3.0.

Esempio

Nell'esempio seguente viene illustrato come utilizzare la CurrentNotification proprietà per determinare l'evento dell'oggetto HttpApplication che gestisce la richiesta corrente. Nell'esempio, il gestore eventi gestisce diversi eventi dell'oggetto HttpApplication e la CurrentNotification proprietà determina il codice richiamato per ogni evento gestito.

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.
                }
            }
        }
    }
}

Commenti

La CurrentNotification proprietà richiede la modalità pipeline integrata in IIS 7.0 e almeno la .NET Framework versione 3.0. Se disponibile, la proprietà restituisce un RequestNotification valore. Il valore della CurrentNotification proprietà indica quale evento nell'istanza HttpApplication sta elaborando la richiesta.

La CurrentNotification proprietà non deve essere impostata. Viene invece impostato da IIS 7.0 durante l'elaborazione della richiesta nella pipeline di ASP.NET. L'impostazione della CurrentNotification proprietà genererà un errore di compilazione.

CurrentNotificationè stato introdotto nella .NET Framework versione 3.5. Per altre informazioni, vedere Versioni e dipendenze.

Si applica a

Vedi anche