Classe HttpContext (System.Web)

Cambia visualizzazione:
ScriptFree
Riferimento a .NET Framework
Classe HttpContext
Il presente articolo è stato tradotto manualmente. Per visualizzare questa pagina e contemporaneamente visualizzarne il contenuto in lingua inglese, passare alla visualizzazione semplificata.

Incapsula tutte le informazioni specifiche di HTTP relative a una singola richiesta HTTP.

Gerarchia di ereditarietà

System.Object
  System.Web.HttpContext

Spazio dei nomi:  System.Web
Assembly:  System.Web (in System.Web.dll)
Sintassi

Visual Basic
Public NotInheritable Class HttpContext _
	Implements IServiceProvider
C#
public sealed class HttpContext : IServiceProvider
Visual C++
public ref class HttpContext sealed : IServiceProvider
F#
[<Sealed>]
type HttpContext =  
    class
        interface IServiceProvider
    end

Il tipo HttpContext espone i seguenti membri.

Costruttori

  Nome Descrizione
Metodo pubblico HttpContext(HttpWorkerRequest) Consente di inizializzare una nuova istanza della classe HttpContext che utilizza l'oggetto richiesta di lavoro specificato.
Metodo pubblico HttpContext(HttpRequest, HttpResponse) Inizializza una nuova istanza della classe HttpContext utilizzando gli oggetti richiesta e risposta specificati.
In alto
Proprietà

  Nome Descrizione
Proprietà pubblica AllErrors Restituisce una matrice degli errori accumulati durante l'elaborazione di una richiesta HTTP.
Proprietà pubblica Application Ottiene l'oggetto HttpApplicationState per la richiesta HTTP corrente.
Proprietà pubblica ApplicationInstance Ottiene o imposta l'oggetto HttpApplication relativo alla richiesta HTTP corrente.
Proprietà pubblica Cache Ottiene l'oggetto Cache per il dominio dell'applicazione corrente.
Proprietà pubblica Membro statico Current Ottiene o imposta l'oggetto HttpContext relativo alla richiesta HTTP corrente.
Proprietà pubblica CurrentHandler Ottiene l'oggetto IHttpHandler che rappresenta il gestore attualmente in esecuzione.
Proprietà pubblica CurrentNotification Ottiene un valore RequestNotification che indica l'evento HttpApplication attualmente in elaborazione.
Proprietà pubblica Error Restituisce il primo errore, se presente, accumulato durante l'elaborazione di una richiesta HTTP.
Proprietà pubblica Handler Ottiene o imposta l'oggetto IHttpHandler responsabile dell'elaborazione della richiesta HTTP.
Proprietà pubblica IsCustomErrorEnabled Restituisce un valore che indica se gli errori personalizzati sono stati attivati per la richiesta HTTP corrente.
Proprietà pubblica IsDebuggingEnabled Restituisce un valore che indica se la richiesta HTTP corrente è in modalità di debug.
Proprietà pubblica IsPostNotification Ottiene un valore che indica se l'evento ASP.NET corrente è considerato un nuovo evento post.
Proprietà pubblica Items Ottiene un insieme chiave/valore che è possibile utilizzare per organizzare e condividere dati tra un'interfaccia IHttpModule e un'interfaccia IHttpHandler durante una richiesta HTTP.
Proprietà pubblica PreviousHandler Ottiene l'oggetto IHttpHandler relativo al gestore padre.
Proprietà pubblica Profile Ottiene l'oggetto ProfileBase relativo al profilo utente corrente.
Proprietà pubblica Request Restituisce l'oggetto HttpRequest relativo alla richiesta HTTP corrente.
Proprietà pubblica Response Restituisce l'oggetto HttpResponse relativo alla risposta HTTP corrente.
Proprietà pubblica Server Restituisce l'oggetto HttpServerUtility che fornisce i metodi da utilizzare nell'elaborazione delle richieste Web.
Proprietà pubblica Session Restituisce l'oggetto HttpSessionState relativo alla richiesta HTTP corrente.
Proprietà pubblica SkipAuthorization Ottiene o imposta un valore che specifica se l'oggetto UrlAuthorizationModule deve ignorare il controllo delle autorizzazioni per la richiesta corrente.
Proprietà pubblica Timestamp Restituisce il formato data/ora iniziale della richiesta HTTP corrente.
Proprietà pubblica Trace Restituisce l'oggetto TraceContext relativo alla risposta HTTP corrente.
Proprietà pubblica User Ottiene o imposta le informazioni sulla sicurezza per la richiesta HTTP corrente.
In alto
Metodi

  Nome Descrizione
Metodo pubblico AddError Consente di aggiungere un'eccezione all'insieme delle eccezioni per la richiesta HTTP corrente.
Metodo pubblico ClearError Cancella tutti gli errori relativi alla richiesta HTTP corrente.
Metodo pubblico Equals(Object) Determina se l'oggetto Object specificato è uguale all'oggetto Object corrente. (Ereditato da Object)
Metodo protetto Finalize Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulitura prima che l'oggetto stesso venga recuperato dalla procedura di Garbage Collection. (Ereditato da Object)
Metodo pubblico Membro statico GetAppConfig Obsoleta. Restituisce le informazioni sulla configurazione richieste per l'applicazione in uso.
Metodo pubblico GetConfig Obsoleta. Restituisce le informazioni sulla configurazione relative alla richiesta HTTP corrente
Metodo pubblico Membro statico GetGlobalResourceObject(String, String) Ottiene un oggetto risorsa a livello di applicazione basato sulle proprietà ClassKey e ResourceKey specificate.
Metodo pubblico Membro statico GetGlobalResourceObject(String, String, CultureInfo) Ottiene un oggetto risorsa a livello di applicazione basato sulle proprietà ClassKey e ResourceKey specificate e sull'oggetto CultureInfo.
Metodo pubblico GetHashCode Funge da funzione hash per un determinato tipo. (Ereditato da Object)
Metodo pubblico Membro statico GetLocalResourceObject(String, String) Ottiene un oggetto risorsa a livello di pagina basato sulle proprietà VirtualPath e ResourceKey specificate.
Metodo pubblico Membro statico GetLocalResourceObject(String, String, CultureInfo) Ottiene un oggetto risorsa a livello di pagina basato sulle proprietà VirtualPath e ResourceKey specificate e sull'oggetto CultureInfo.
Metodo pubblico GetSection Ottiene una sezione di configurazione specificata per la configurazione predefinita dell'applicazione corrente.
Metodo pubblico GetType Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object)
Metodo protetto MemberwiseClone Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object)
Metodo pubblico RemapHandler Consente di specificare un gestore per la richiesta.
Metodo pubblico RewritePath(String) Riscrive l'URL utilizzando il percorso specificato.
Metodo pubblico RewritePath(String, Boolean) Riscrive l'URL utilizzando il percorso specificato e un valore booleano che specifica se il percorso virtuale per le risorse del server è stato modificato.
Metodo pubblico RewritePath(String, String, String) Riscrive l'URL utilizzando il percorso specificato, le informazioni sul percorso e le informazioni sulla stringa di query.
Metodo pubblico RewritePath(String, String, String, Boolean) Riscrive l'URL utilizzando il percorso virtuale specificato, informazioni sul percorso, informazioni della stringa di query e un valore booleano che specifica se il percorso del file del client è impostato sul percorso di riscrittura.
Metodo pubblico SetSessionStateBehavior Imposta il tipo di comportamento dello stato di sessione necessario per supportare una richiesta HTTP.
Metodo pubblico ToString Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object)
In alto
Implementazioni esplicite dell'interfaccia

  Nome Descrizione
Implementazione esplicita dell'interfaccia Metodo privato IServiceProvider.GetService Infrastruttura. Restituisce un oggetto per il tipo di servizio corrente.
In alto
Note

Alle classi che ereditano le interfacce IHttpModule e IHttpHandler viene fornito un riferimento a un oggetto HttpContext per la richiesta HTTP corrente. L'oggetto fornisce accesso alle proprietà intrinseche Request, Response e Server per la richiesta.

Esempi

A complemento di questo argomento è disponibile un progetto di sito Web di Visual Studio con codice sorgente che è possibile scaricare.

Nell'esempio riportato di seguito viene illustrato come accedere alle proprietà dell'oggetto HttpContext e visualizzarle. È possibile accedere al contesto della richiesta HTTP corrente mediante la proprietà Context dell'oggetto Page.

Visual Basic

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
        ' The HttpContext associated with the page can be accessed by the Context property.
        Dim sb As New System.Text.StringBuilder()

        ' Use the current HttpContext object to determine if custom errors are enabled.
        sb.Append("Is custom errors enabled: " & _
            Context.IsCustomErrorEnabled.ToString() & "<br/>")

        ' Use the current HttpContext object to determine if debugging is enabled.
        sb.Append("Is debugging enabled: " & _
            Context.IsDebuggingEnabled.ToString() & "<br/>")

        ' Use the current HttpContext object to access the current TraceContext object.
        sb.Append("Trace Enabled: " & _
            Context.Trace.IsEnabled.ToString() & "<br/>")

        ' Use the current HttpContext object to access the current HttpApplicationState object.
        sb.Append("Number of items in Application state: " & _
            Context.Application.Count.ToString() & "<br/>")

        ' Use the current HttpContext object to access the current HttpSessionState object.
        ' Session state may not be configured.
        Try
            sb.Append("Number of items in Session state: " & _
                Context.Session.Count.ToString() & "<br/>")
        Catch ex As Exception
            sb.Append("Session state not enabled. <br/>")
        End Try

        ' Use the current HttpContext object to access the current Cache object.
        sb.Append("Number of items in the cache: " & _
            Context.Cache.Count.ToString() & "<br/>")

        ' Use the current HttpContext object to determine the timestamp for the current HTTP Request.
        sb.Append("Timestamp for the HTTP request: " & _
            Context.Timestamp.ToString() & "<br/>")

        ' Assign StringBuilder object to output label.
        OutputLabel.Text = sb.ToString()
    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HttpContext Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
       Using the current HttpContext to get information about the current page.
       <br />
       <asp:Label id="OutputLabel" runat="server"></asp:Label>           
    </div>
    </form>
</body>
</html>


C#

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    protected void Page_Load(object sender, EventArgs e)
    {
        // The HttpContext associated with the page can be accessed by the Context property.
        System.Text.StringBuilder sb = new System.Text.StringBuilder();
        // Use the current HttpContext object to determine if custom errors are enabled.
        sb.Append("Is custom errors enabled: " +
            Context.IsCustomErrorEnabled.ToString() + "<br/>");

        // Use the current HttpContext object to determine if debugging is enabled.
        sb.Append("Is debugging enabled: " +
            Context.IsDebuggingEnabled.ToString() + "<br/>");

        // Use the current HttpContext object to access the current TraceContext object.
        sb.Append("Trace Enabled: " +
            Context.Trace.IsEnabled.ToString() + "<br/>");

        // Use the current HttpContext object to access the current HttpApplicationState object.
        sb.Append("Number of items in Application state: " +
            Context.Application.Count.ToString() + "<br/>");

        // Use the current HttpContext object to access the current HttpSessionState object.
        // Session state may not be configured.
        try
        {
            sb.Append("Number of items in Session state: " +
                Context.Session.Count.ToString() + "<br/>");
        }
        catch
        {
            sb.Append("Session state not enabled. <br/>");
        }

        // Use the current HttpContext object to access the current Cache object.
        sb.Append("Number of items in the cache: " +
            Context.Cache.Count.ToString() + "<br/>");

        // Use the current HttpContext object to determine the timestamp for the current HTTP Request.
        sb.Append("Timestamp for the HTTP request: " +
            Context.Timestamp.ToString() + "<br/>");

        // Assign StringBuilder object to output label.
        OutputLabel.Text = sb.ToString();
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HttpContext Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
       Using the current HttpContext to get information about the current page.
       <br />
       <asp:Label id="OutputLabel" runat="server"></asp:Label>           
    </div>
    </form>
</body>
</html>


Informazioni sulla versione

.NET Framework

Supportato in: 4, 3.5, 3.0, 2.0, 1.1, 1.0
Piattaforme

Windows 7, Windows Vista SP1 o versione successiva, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (componenti di base del server non supportati), Windows Server 2008 R2 (componenti di base del server supportati con SP1 o versione successiva), Windows Server 2003 SP2

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Codice thread safe

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.
Vedere anche

Riferimenti

Altre risorse