HttpServerUtility.Execute Metoda
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.
Wykonuje procedurę obsługi dla określonego zasobu w kontekście bieżącego żądania i zwraca wykonanie do strony, która ją wywołała.
Przeciążenia
Execute(String) |
Wykonuje procedurę obsługi dla określonej ścieżki wirtualnej w kontekście bieżącego żądania. |
Execute(String, Boolean) |
Wykonuje procedurę obsługi dla określonej ścieżki wirtualnej w kontekście bieżącego żądania i określa, czy usunąć QueryString kolekcje i Form . |
Execute(String, TextWriter) |
Wykonuje procedurę obsługi dla określonej ścieżki wirtualnej w kontekście bieżącego żądania. Element TextWriter przechwytuje dane wyjściowe z wykonanej procedury obsługi. |
Execute(String, TextWriter, Boolean) |
Wykonuje procedurę obsługi dla określonej ścieżki wirtualnej w kontekście bieżącego żądania. Przechwytuje TextWriter dane wyjściowe ze strony i parametr logiczny określa, czy usunąć QueryString kolekcje i Form . |
Execute(IHttpHandler, TextWriter, Boolean) |
Wykonuje procedurę obsługi dla określonej ścieżki wirtualnej w kontekście bieżącego żądania. Dane TextWriter wyjściowe przechwytują dane wyjściowe z wykonanej procedury obsługi, a parametr logiczny określa, czy usunąć QueryString kolekcje i Form . |
Execute(String)
Wykonuje procedurę obsługi dla określonej ścieżki wirtualnej w kontekście bieżącego żądania.
public:
void Execute(System::String ^ path);
public void Execute (string path);
member this.Execute : string -> unit
Public Sub Execute (path As String)
Parametry
- path
- String
Ścieżka adresu URL do wykonania.
Wyjątki
Bieżąca HttpContext wartość to null
.
-lub-
Wystąpił błąd podczas wykonywania procedury obsługi określonej przez path
program .
Przykłady
Poniższy przykład przedstawia stronę aspx "Updateinfo.aspx" w bieżącym katalogu. Wykonanie programu powraca na stronę początkową po wyświetleniu strony Updateinfo.aspx.
Server.Execute("updateinfo.aspx");
Server.Execute("updateinfo.aspx")
Uwagi
Metoda Execute kontynuuje wykonywanie oryginalnej strony po zakończeniu wykonywania nowej strony. Metoda Transfer bezwarunkowo przesyła wykonywanie do innej procedury obsługi.
ASP.NET nie sprawdza, czy bieżący użytkownik ma uprawnienia do wyświetlania zasobu dostarczonego przez metodęExecute. Mimo że logika autoryzacji i uwierzytelniania ASP.NET jest uruchamiana przed wywołaniem oryginalnego programu obsługi zasobów, ASP.NET bezpośrednio wywołuje procedurę obsługi wskazaną przez Execute metodę i nie uruchamia ponownie logiki uwierzytelniania i autoryzacji dla nowego zasobu. Jeśli zasady zabezpieczeń aplikacji wymagają, aby klienci mieli odpowiednią autoryzację w celu uzyskania dostępu do zasobu, aplikacja powinna wymusić ponowne uwierzytelnianie lub zapewnić niestandardowy mechanizm kontroli dostępu.
Można wymusić ponowne uwierzytelnianie przy użyciu Redirect metody zamiast Execute metody . Redirect wykonuje przekierowanie po stronie klienta, w którym przeglądarka żąda nowego zasobu. Ponieważ to przekierowanie jest nowym żądaniem wprowadzającym system, podlega ono całej logice uwierzytelniania i autoryzacji zarówno Internet Information Services (IIS), jak i zasad zabezpieczeń ASP.NET.
Możesz sprawdzić, czy użytkownik ma uprawnienia do wyświetlania zasobu, dołączając niestandardową metodę autoryzacji, która używa IsInRole metody przed wywołaniem metody przez aplikację Execute .
Dotyczy
Execute(String, Boolean)
Wykonuje procedurę obsługi dla określonej ścieżki wirtualnej w kontekście bieżącego żądania i określa, czy usunąć QueryString kolekcje i Form .
public:
void Execute(System::String ^ path, bool preserveForm);
public void Execute (string path, bool preserveForm);
member this.Execute : string * bool -> unit
Public Sub Execute (path As String, preserveForm As Boolean)
Parametry
- path
- String
Ścieżka adresu URL do wykonania.
- preserveForm
- Boolean
true
w celu zachowania QueryString kolekcji i Form ; false
w celu wyczyszczenia QueryString kolekcji i Form .
Wyjątki
Bieżąca HttpContext wartość to null
.
-lub-
Wystąpił błąd podczas wykonywania procedury obsługi określonej przez path
program .
Przykłady
W poniższym przykładzie pokazano, jak wykonać stronę Updateinfo.aspx
aspx w bieżącym żądaniu i zachować QueryString kolekcje i Form . Wykonanie programu powraca do strony początkowej po Updateinfo.aspx
wyświetleniu.
private void Page_Load(Object sender, EventArgs e)
{
Server.Execute("updateinfo.aspx", true);
}
Sub Page_Load(ByVal Sender As Object, ByVal e As EventArgs)
Server.Execute("updateinfo.aspx", True)
End Sub
Zobacz też
Dotyczy
Execute(String, TextWriter)
Wykonuje procedurę obsługi dla określonej ścieżki wirtualnej w kontekście bieżącego żądania. Element TextWriter przechwytuje dane wyjściowe z wykonanej procedury obsługi.
public:
void Execute(System::String ^ path, System::IO::TextWriter ^ writer);
public void Execute (string path, System.IO.TextWriter writer);
member this.Execute : string * System.IO.TextWriter -> unit
Public Sub Execute (path As String, writer As TextWriter)
Parametry
- path
- String
Ścieżka adresu URL do wykonania.
- writer
- TextWriter
Element TextWriter do przechwytywania danych wyjściowych.
Wyjątki
Bieżąca HttpContext wartość to null
.
-lub-
Wystąpił błąd podczas wykonywania procedury obsługi określonej przez path
program .
Przykłady
Poniższy przykład wykonuje Login.aspx
stronę na serwerze w bieżącym katalogu i odbiera dane wyjściowe ze strony za pośrednictwem StringWriter obiektu writer
. Zapisuje strumień HTML odebrany ze writer
strumienia wyjściowego HTTP.
StringWriter writer = new StringWriter();
Server.Execute("Login.aspx", writer);
Response.Write("<H3>Please Login:</H3><br>"+ writer.ToString());
Dim writer As New StringWriter
Server.Execute("Login.aspx", writer)
Response.Write("<H3>Please Login:</H3><br>" & writer.ToString())
Uwagi
Metoda Execute kontynuuje wykonywanie oryginalnego żądania po wykonaniu określonej ścieżki wirtualnej. Metoda Transfer bezwarunkowo przesyła wykonywanie do innej procedury obsługi.
ASP.NET nie sprawdza, czy bieżący użytkownik ma uprawnienia do wyświetlania zasobu dostarczonego przez metodęExecute. Mimo że logika autoryzacji i uwierzytelniania ASP.NET jest uruchamiana przed wywołaniem oryginalnego programu obsługi zasobów, ASP.NET bezpośrednio wywołuje procedurę obsługi wskazaną przez Execute metodę i nie uruchamia ponownie logiki uwierzytelniania i autoryzacji dla nowego zasobu. Jeśli zasady zabezpieczeń aplikacji wymagają, aby klienci mieli odpowiednią autoryzację w celu uzyskania dostępu do zasobu, aplikacja powinna wymusić ponowne uwierzytelnianie lub zapewnić niestandardowy mechanizm kontroli dostępu.
Można wymusić ponowne uwierzytelnianie przy użyciu Redirect metody zamiast Execute metody . Redirect wykonuje przekierowanie po stronie klienta, w którym przeglądarka żąda nowego zasobu. Ponieważ to przekierowanie jest nowym żądaniem wprowadzającym system, podlega ono całej logice uwierzytelniania i autoryzacji zarówno Internet Information Services (IIS), jak i zasad zabezpieczeń ASP.NET.
Możesz sprawdzić, czy użytkownik ma uprawnienia do wyświetlania zasobu, dołączając niestandardową metodę autoryzacji, która używa IsInRole metody przed wywołaniem metody przez aplikację Execute .
Zobacz też
Dotyczy
Execute(String, TextWriter, Boolean)
Wykonuje procedurę obsługi dla określonej ścieżki wirtualnej w kontekście bieżącego żądania. Przechwytuje TextWriter dane wyjściowe ze strony i parametr logiczny określa, czy usunąć QueryString kolekcje i Form .
public:
void Execute(System::String ^ path, System::IO::TextWriter ^ writer, bool preserveForm);
public void Execute (string path, System.IO.TextWriter writer, bool preserveForm);
member this.Execute : string * System.IO.TextWriter * bool -> unit
Public Sub Execute (path As String, writer As TextWriter, preserveForm As Boolean)
Parametry
- path
- String
Ścieżka adresu URL do wykonania.
- writer
- TextWriter
Element TextWriter do przechwytywania danych wyjściowych.
- preserveForm
- Boolean
true
w celu zachowania QueryString kolekcji i Form ; false
w celu wyczyszczenia QueryString kolekcji i Form .
Wyjątki
Bieżący HttpContext jest odwołaniem o wartości null (Nothing
w Visual Basic).
-lub-
path
kończy się kropką (.).
-lub-
Wystąpił błąd podczas wykonywania procedury obsługi określonej przez path
program .
path
to null
.
path
nie jest ścieżką wirtualną.
Przykłady
Poniższy przykład wykonuje Login.aspx
stronę na serwerze w bieżącym katalogu i odbiera dane wyjściowe ze strony za pośrednictwem StringWriter obiektu writer
. Zapisuje strumień HTML odebrany ze writer
strumienia wyjściowego HTTP. Zawartość Form kolekcji i QueryString jest zachowywana.
private void Page_Load(Object sender, EventArgs e)
{
System.IO.StringWriter writer = new System.IO.StringWriter();
Server.Execute("Login.aspx", writer, true);
Response.Write("<h3>Please Login:</h3><br />" + writer.ToString());
}
Sub Page_Load(ByVal Sender As Object, ByVal e As EventArgs)
Dim writer As System.IO.StringWriter = New System.IO.StringWriter()
Server.Execute("Login.aspx", writer, True)
Response.Write("<h3>Please Login:</h3><br />" + writer.ToString())
End Sub
Uwagi
Metoda Execute kontynuuje wykonywanie oryginalnego żądania po wykonaniu określonej ścieżki wirtualnej. Metoda Transfer bezwarunkowo przesyła wykonywanie do innej procedury obsługi.
ASP.NET nie sprawdza, czy bieżący użytkownik ma uprawnienia do wyświetlania zasobu dostarczonego przez metodęExecute. Mimo że logika autoryzacji i uwierzytelniania ASP.NET jest uruchamiana przed wywołaniem oryginalnego programu obsługi zasobów, ASP.NET bezpośrednio wywołuje procedurę obsługi wskazaną przez Execute metodę i nie uruchamia ponownie logiki uwierzytelniania i autoryzacji dla nowego zasobu. Jeśli zasady zabezpieczeń aplikacji wymagają, aby klienci mieli odpowiednią autoryzację w celu uzyskania dostępu do zasobu, aplikacja powinna wymusić ponowne uwierzytelnianie lub zapewnić niestandardowy mechanizm kontroli dostępu.
Można wymusić ponowne uwierzytelnianie przy użyciu Redirect metody zamiast Execute metody . Redirect wykonuje przekierowanie po stronie klienta, w którym przeglądarka żąda nowego zasobu. Ponieważ to przekierowanie jest nowym żądaniem wprowadzającym system, podlega ono całej logice uwierzytelniania i autoryzacji zarówno Internet Information Services (IIS), jak i zasad zabezpieczeń ASP.NET.
Możesz sprawdzić, czy użytkownik ma uprawnienia do wyświetlania zasobu, dołączając niestandardową metodę autoryzacji, która używa IsInRole metody przed wywołaniem metody przez aplikację Execute .
Zobacz też
Dotyczy
Execute(IHttpHandler, TextWriter, Boolean)
Wykonuje procedurę obsługi dla określonej ścieżki wirtualnej w kontekście bieżącego żądania. Dane TextWriter wyjściowe przechwytują dane wyjściowe z wykonanej procedury obsługi, a parametr logiczny określa, czy usunąć QueryString kolekcje i Form .
public:
void Execute(System::Web::IHttpHandler ^ handler, System::IO::TextWriter ^ writer, bool preserveForm);
public void Execute (System.Web.IHttpHandler handler, System.IO.TextWriter writer, bool preserveForm);
member this.Execute : System.Web.IHttpHandler * System.IO.TextWriter * bool -> unit
Public Sub Execute (handler As IHttpHandler, writer As TextWriter, preserveForm As Boolean)
Parametry
- handler
- IHttpHandler
Procedura obsługi HTTP, która implementuje IHttpHandler element w celu przeniesienia bieżącego żądania do.
- writer
- TextWriter
Element TextWriter do przechwytywania danych wyjściowych.
- preserveForm
- Boolean
true
w celu zachowania QueryString kolekcji i Form ; false
w celu wyczyszczenia QueryString kolekcji i Form .
Wyjątki
Wystąpił błąd podczas wykonywania procedury obsługi określonej przez handler
program .
Parametr handler
to null
.
Uwagi
Niestandardowe programy obsługi HTTP można pisać w celu przetwarzania określonych, wstępnie zdefiniowanych typów żądań HTTP w dowolnym języku zgodnym ze specyfikacją języka wspólnego (CLS). Kod wykonywalny zdefiniowany w klasach obsługi HTTP zamiast konwencjonalnych stron ASP (nazywanych również klasycznymi platformami ASP) lub ASP.NET stron odpowiada na te konkretne żądania. Programy obsługi HTTP umożliwiają interakcję z usługami żądań i odpowiedzi niskiego poziomu serwera sieci Web z uruchomionym Internet Information Services (IIS) i zapewniają funkcje podobne do rozszerzeń ISAPI, ale z prostszym modelem programowania.
ASP.NET nie sprawdza, czy bieżący użytkownik ma uprawnienia do wyświetlania zasobu dostarczonego przez metodęExecute. Mimo że logika autoryzacji i uwierzytelniania ASP.NET jest uruchamiana przed wywołaną oryginalną procedurą obsługi zasobów, ASP.NET bezpośrednio wywołuje procedurę obsługi wskazaną przez Execute metodę i nie uruchamia ponownie logiki uwierzytelniania i autoryzacji dla nowego zasobu. Jeśli zasady zabezpieczeń aplikacji wymagają, aby klienci mieli odpowiednią autoryzację w celu uzyskania dostępu do zasobu, aplikacja powinna wymusić ponowne uwierzytelnianie lub zapewnić niestandardowy mechanizm kontroli dostępu.
Można wymusić ponowne uwierzytelnianie przy użyciu Redirect metody zamiast Execute metody . Program Redirect wykonuje przekierowanie po stronie klienta, w którym przeglądarka żąda nowego zasobu. Ponieważ to przekierowanie jest nowym żądaniem wprowadzającym system, podlega ono całej logice uwierzytelniania i autoryzacji zarówno usług IIS, jak i zasad zabezpieczeń ASP.NET.
Możesz sprawdzić, czy użytkownik ma uprawnienia do wyświetlania zasobu, dołączając niestandardową metodę autoryzacji, która używa IsInRole metody przed wywołaniem metody przez aplikację Execute .