HttpContext Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Hermetyzuje wszystkie informacje specyficzne dla protokołu HTTP dotyczące pojedynczego żądania HTTP.
public ref class HttpContext sealed : IServiceProvider
public sealed class HttpContext : IServiceProvider
type HttpContext = class
interface IServiceProvider
Public NotInheritable Class HttpContext
Implements IServiceProvider
- Dziedziczenie
-
HttpContext
- Implementuje
Przykłady
W poniższym przykładzie pokazano, jak uzyskać dostęp do właściwości HttpContext obiektu i wyświetlić je. Dostęp do kontekstu bieżącego żądania HTTP jest uzyskiwany przy użyciu Context właściwości Page obiektu .
<%@ 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>
<%@ 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>
Uwagi
Klasy dziedzicujące IHttpModule interfejsy i IHttpHandler są dostarczane odwołanie do HttpContext obiektu dla bieżącego żądania HTTP. Obiekt zapewnia dostęp do właściwości wewnętrznych Request, Responsei Server dla żądania.
Ważne
Ten obiekt jest gotowy do odzyskiwania pamięci po zakończeniu HttpRequest . Jego użycie po zakończeniu żądania może prowadzić do niezdefiniowanego zachowania, takiego jak NullReferenceException.
Ten obiekt jest dostępny tylko w wątku kontrolowanym przez ASP.NET. Użycie w wątkach w tle może prowadzić do niezdefiniowanego zachowania.
Konstruktory
HttpContext(HttpRequest, HttpResponse) |
Inicjuje HttpContext nowe wystąpienie klasy przy użyciu określonych obiektów żądania i odpowiedzi. |
HttpContext(HttpWorkerRequest) |
Inicjuje HttpContext nowe wystąpienie klasy, które używa określonego obiektu worker-request. |
Właściwości
AllErrors |
Pobiera tablicę błędów skumulowanych podczas przetwarzania żądania HTTP. |
AllowAsyncDuringSyncStages |
Pobiera lub ustawia wartość wskazującą, czy operacje asynchroniczne są dozwolone podczas części przetwarzania żądań ASP.NET, gdy nie są oczekiwane. |
Application |
HttpApplicationState Pobiera obiekt dla bieżącego żądania HTTP. |
ApplicationInstance |
Pobiera lub ustawia HttpApplication obiekt dla bieżącego żądania HTTP. |
AsyncPreloadMode |
Pobiera lub ustawia obiekt zawierający flagi odnoszące się do trybu wstępnego ładowania asynchronicznego. |
Cache |
Cache Pobiera obiekt dla bieżącej domeny aplikacji. |
Current |
Pobiera lub ustawia HttpContext obiekt dla bieżącego żądania HTTP. |
CurrentHandler |
IHttpHandler Pobiera obiekt reprezentujący aktualnie wykonywany program obsługi. |
CurrentNotification |
Pobiera wartość wskazującą RequestNotification bieżące HttpApplication zdarzenie, które jest przetwarzane. |
Error |
Pobiera pierwszy błąd (jeśli istnieje) skumulowany podczas przetwarzania żądań HTTP. |
Handler |
Pobiera lub ustawia IHttpHandler obiekt odpowiedzialny za przetwarzanie żądania HTTP. |
IsCustomErrorEnabled |
Pobiera wartość wskazującą, czy błędy niestandardowe są włączone dla bieżącego żądania HTTP. |
IsDebuggingEnabled |
Pobiera wartość wskazującą, czy bieżące żądanie HTTP jest w trybie debugowania. |
IsPostNotification |
Pobiera wartość, która jest bieżącym punktem przetwarzania w potoku ASP.NET tuż po zakończeniu przetwarzania zdarzenia HttpApplication . |
IsWebSocketRequest |
Pobiera wartość wskazującą, czy żądanie jest żądaniem AspNetWebSocket . |
IsWebSocketRequestUpgrading |
Pobiera wartość wskazującą, czy połączenie jest uaktualniane z połączenia HTTP do AspNetWebSocket połączenia. |
Items |
Pobiera kolekcję klucz/wartość, która może służyć do organizowania i udostępniania danych między interfejsem IHttpModule a interfejsem IHttpHandler podczas żądania HTTP. |
PageInstrumentation |
Pobiera odwołanie do wystąpienia usługi instrumentacji strony dla tego żądania. |
PreviousHandler |
IHttpHandler Pobiera obiekt programu obsługi nadrzędnej. |
Profile |
ProfileBase Pobiera obiekt dla bieżącego profilu użytkownika. |
Request |
HttpRequest Pobiera obiekt dla bieżącego żądania HTTP. |
Response |
HttpResponse Pobiera obiekt dla bieżącej odpowiedzi HTTP. |
Server |
HttpServerUtility Pobiera obiekt, który udostępnia metody używane do przetwarzania żądań sieci Web. |
Session |
HttpSessionState Pobiera obiekt dla bieżącego żądania HTTP. |
SkipAuthorization |
Pobiera lub ustawia wartość określającą, czy UrlAuthorizationModule obiekt powinien pominąć sprawdzanie autoryzacji dla bieżącego żądania. |
ThreadAbortOnTimeout |
Pobiera lub ustawia wartość określającą, czy środowisko uruchomieniowe ASP.NET powinno wywołać Abort() wątek, który obsługuje to żądanie po przekroczeniu limitu czasu żądania. |
Timestamp |
Pobiera początkowy znacznik czasu bieżącego żądania HTTP. |
Trace |
TraceContext Pobiera obiekt dla bieżącej odpowiedzi HTTP. |
User |
Pobiera lub ustawia informacje o zabezpieczeniach dla bieżącego żądania HTTP. |
WebSocketNegotiatedProtocol |
Pobiera wynegocjowany protokół, który został wysłany z serwera do klienta na potrzeby AspNetWebSocket połączenia. |
WebSocketRequestedProtocols |
Pobiera uporządkowaną listę protokołów żądanych przez klienta. |
Metody
AcceptWebSocketRequest(Func<AspNetWebSocketContext,Task>) |
AspNetWebSocket Akceptuje żądanie przy użyciu określonej funkcji użytkownika. |
AcceptWebSocketRequest(Func<AspNetWebSocketContext,Task>, AspNetWebSocketOptions) |
AspNetWebSocket Akceptuje żądanie przy użyciu określonej funkcji użytkownika i obiektu opcji. |
AddError(Exception) |
Dodaje wyjątek do kolekcji wyjątków dla bieżącego żądania HTTP. |
AddOnRequestCompleted(Action<HttpContext>) |
Zgłasza zdarzenie wirtualne, które występuje po zakończeniu części żądania HTTP. |
ClearError() |
Czyści wszystkie błędy dla bieżącego żądania HTTP. |
DisposeOnPipelineCompleted(IDisposable) |
Umożliwia wywoływanie metody obiektu Dispose() po zakończeniu AspNetWebSocket części połączenia tego żądania. |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetAppConfig(String) |
Przestarzałe.
Zwraca żądane informacje o konfiguracji dla bieżącej aplikacji. |
GetConfig(String) |
Przestarzałe.
Zwraca żądane informacje o konfiguracji dla bieżącego żądania HTTP. |
GetGlobalResourceObject(String, String) |
Pobiera obiekt zasobu na poziomie aplikacji na podstawie określonych ClassKey właściwości i ResourceKey . |
GetGlobalResourceObject(String, String, CultureInfo) |
Pobiera obiekt zasobu na poziomie aplikacji na podstawie określonych ClassKey właściwości i ResourceKey oraz na CultureInfo obiekcie . |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetLocalResourceObject(String, String) |
Pobiera obiekt zasobu na poziomie strony na podstawie określonych VirtualPath właściwości i ResourceKey . |
GetLocalResourceObject(String, String, CultureInfo) |
Pobiera obiekt zasobu na poziomie strony na podstawie określonych VirtualPath właściwości i ResourceKey oraz na CultureInfo obiekcie . |
GetSection(String) |
Pobiera określoną sekcję konfiguracji dla domyślnej konfiguracji bieżącej aplikacji. |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
RemapHandler(IHttpHandler) |
Umożliwia określenie procedury obsługi dla żądania. |
RewritePath(String) |
Ponownie zapisuje adres URL przy użyciu podanej ścieżki. |
RewritePath(String, Boolean) |
Ponownie zapisuje adres URL przy użyciu podanej ścieżki i wartości logicznej, która określa, czy ścieżka wirtualna zasobów serwera jest modyfikowana. |
RewritePath(String, String, String) |
Ponownie zapisuje adres URL przy użyciu podanej ścieżki, informacji o ścieżce i informacji o ciągu zapytania. |
RewritePath(String, String, String, Boolean) |
Ponownie zapisuje adres URL przy użyciu podanej ścieżki wirtualnej, informacji o ścieżce, informacji o ciągu zapytania i wartości logicznej określającej, czy ścieżka pliku klienta jest ustawiona na ścieżkę ponownego zapisywania. |
SetSessionStateBehavior(SessionStateBehavior) |
Ustawia typ zachowania stanu sesji, który jest wymagany do obsługi żądania HTTP. |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
Jawne implementacje interfejsu
IServiceProvider.GetService(Type) |
Zwraca obiekt dla bieżącego typu usługi. |
Metody rozszerzania
GetKeyedService<T>(IServiceProvider, Object) |
Pobiera usługę typu |
GetKeyedServices(IServiceProvider, Type, Object) |
Pobiera wyliczenie usług typu |
GetKeyedServices<T>(IServiceProvider, Object) |
Pobiera wyliczenie usług typu |
GetRequiredKeyedService(IServiceProvider, Type, Object) |
Pobiera usługę typu |
GetRequiredKeyedService<T>(IServiceProvider, Object) |
Pobiera usługę typu |
CreateAsyncScope(IServiceProvider) |
Tworzy nowy AsyncServiceScope , który może służyć do rozwiązywania problemów z usługami o określonym zakresie. |
CreateScope(IServiceProvider) |
Tworzy nowy IServiceScope , który może służyć do rozwiązywania problemów z usługami o określonym zakresie. |
GetRequiredService(IServiceProvider, Type) |
Pobierz usługę typu |
GetRequiredService<T>(IServiceProvider) |
Pobierz usługę typu |
GetService<T>(IServiceProvider) |
Pobierz usługę typu |
GetServices(IServiceProvider, Type) |
Pobierz wyliczenie usług typu |
GetServices<T>(IServiceProvider) |
Pobierz wyliczenie usług typu |
GetFakeLogCollector(IServiceProvider) |
Pobiera obiekt zbierający rekordy dziennika wysyłane do fałszywego rejestratora. |
GetFakeRedactionCollector(IServiceProvider) |
Pobiera fałszywe wystąpienie modułu zbierającego redactor z kontenera wstrzykiwania zależności. |