HttpServerUtility.Execute Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Executes the handler for a specified resource in the context of the current request and returns execution to the page that invoked it.
Overloads
Execute(String) |
Executes the handler for the specified virtual path in the context of the current request. |
Execute(String, Boolean) |
Executes the handler for the specified virtual path in the context of the current request and specifies whether to clear the QueryString and Form collections. |
Execute(String, TextWriter) |
Executes the handler for the specified virtual path in the context of the current request. A TextWriter captures output from the executed handler. |
Execute(String, TextWriter, Boolean) |
Executes the handler for the specified virtual path in the context of the current request. A TextWriter captures output from the page and a Boolean parameter specifies whether to clear the QueryString and Form collections. |
Execute(IHttpHandler, TextWriter, Boolean) |
Executes the handler for the specified virtual path in the context of the current request. A TextWriter captures output from the executed handler and a Boolean parameter specifies whether to clear the QueryString and Form collections. |
Execute(String)
Executes the handler for the specified virtual path in the context of the current request.
public:
void Execute(System::String ^ path);
public void Execute (string path);
member this.Execute : string -> unit
Public Sub Execute (path As String)
Parameters
- path
- String
The URL path to execute.
Exceptions
The current HttpContext is null
.
-or-
An error occurred while executing the handler specified by path
.
Examples
The following example displays the .aspx page "Updateinfo.aspx" in the current directory. Program execution returns to the starting page after the Updateinfo.aspx page is displayed.
Server.Execute("updateinfo.aspx");
Server.Execute("updateinfo.aspx")
Remarks
The Execute method continues execution of the original page after execution of the new page is completed. The Transfer method unconditionally transfers execution to another handler.
ASP.NET does not verify that the current user is authorized to view the resource delivered by the Execute method. Although the ASP.NET authorization and authentication logic runs before the original resource handler is called, ASP.NET directly calls the handler indicated by the Execute method and does not rerun authentication and authorization logic for the new resource. If your application's security policy requires clients to have appropriate authorization to access the resource, the application should force reauthorization or provide a custom access-control mechanism.
You can force reauthorization by using the Redirect method instead of the Execute method. Redirect performs a client-side redirect in which the browser requests the new resource. Because this redirect is a new request entering the system, it is subjected to all the authentication and authorization logic of both Internet Information Services (IIS) and ASP.NET security policy.
You can verify that the user has permission to view the resource by incorporating a custom authorization method that uses the IsInRole method before the application calls the Execute method.
Applies to
Execute(String, Boolean)
Executes the handler for the specified virtual path in the context of the current request and specifies whether to clear the QueryString and Form collections.
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)
Parameters
- path
- String
The URL path to execute.
- preserveForm
- Boolean
true
to preserve the QueryString and Form collections; false
to clear the QueryString and Form collections.
Exceptions
The current HttpContext is null
.
-or-
An error occurred while executing the handler specified by path
.
Examples
The following example shows how to execute the .aspx page Updateinfo.aspx
in the current request and preserve the QueryString and Form collections. Program execution returns to the starting page after Updateinfo.aspx
is displayed.
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
See also
Applies to
Execute(String, TextWriter)
Executes the handler for the specified virtual path in the context of the current request. A TextWriter captures output from the executed handler.
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)
Parameters
- path
- String
The URL path to execute.
- writer
- TextWriter
The TextWriter to capture the output.
Exceptions
The current HttpContext is null
.
-or-
An error occurred while executing the handler specified by path
.
Examples
The following example executes the Login.aspx
page on the server in the current directory and receives the output from the page through the StringWriter object writer
. It writes the HTML stream received from writer
to the HTTP output stream.
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())
Remarks
The Execute method continues execution of the original request after execution of the virtual path specified is completed. The Transfer method unconditionally transfers execution to another handler.
ASP.NET does not verify that the current user is authorized to view the resource delivered by the Execute method. Although the ASP.NET authorization and authentication logic runs before the original resource handler is called, ASP.NET directly calls the handler indicated by the Execute method and does not rerun authentication and authorization logic for the new resource. If your application's security policy requires clients to have appropriate authorization to access the resource, the application should force reauthorization or provide a custom access-control mechanism.
You can force reauthorization by using the Redirect method instead of the Execute method. Redirect performs a client-side redirect in which the browser requests the new resource. Because this redirect is a new request entering the system, it is subjected to all the authentication and authorization logic of both Internet Information Services (IIS) and ASP.NET security policy.
You can verify that the user has permission to view the resource by incorporating a custom authorization method that uses the IsInRole method before the application calls the Execute method.
See also
Applies to
Execute(String, TextWriter, Boolean)
Executes the handler for the specified virtual path in the context of the current request. A TextWriter captures output from the page and a Boolean parameter specifies whether to clear the QueryString and Form collections.
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)
Parameters
- path
- String
The URL path to execute.
- writer
- TextWriter
The TextWriter to capture the output.
- preserveForm
- Boolean
true
to preserve the QueryString and Form collections; false
to clear the QueryString and Form collections.
Exceptions
The current HttpContext is a null reference (Nothing
in Visual Basic).
-or-
path
ends with a period (.).
-or-
An error occurred while executing the handler specified by path
.
path
is null
.
path
is not a virtual path.
Examples
The following example executes the Login.aspx
page on the server in the current directory and receives the output from the page through the StringWriter object writer
. It writes the HTML stream received from writer
to the HTTP output stream. The contents of the Form and QueryString collections are preserved.
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
Remarks
The Execute method continues execution of the original request after execution of the specified virtual path is completed. The Transfer method unconditionally transfers execution to another handler.
ASP.NET does not verify that the current user is authorized to view the resource delivered by the Execute method. Although the ASP.NET authorization and authentication logic runs before the original resource handler is called, ASP.NET directly calls the handler indicated by the Execute method and does not rerun authentication and authorization logic for the new resource. If your application's security policy requires clients to have appropriate authorization to access the resource, the application should force reauthorization or provide a custom access-control mechanism.
You can force reauthorization by using the Redirect method instead of the Execute method. Redirect performs a client-side redirect in which the browser requests the new resource. Because this redirect is a new request entering the system, it is subjected to all the authentication and authorization logic of both Internet Information Services (IIS) and ASP.NET security policy.
You can verify that the user has permission to view the resource by incorporating a custom authorization method that uses the IsInRole method before the application calls the Execute method.
See also
Applies to
Execute(IHttpHandler, TextWriter, Boolean)
Executes the handler for the specified virtual path in the context of the current request. A TextWriter captures output from the executed handler and a Boolean parameter specifies whether to clear the QueryString and Form collections.
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)
Parameters
- handler
- IHttpHandler
The HTTP handler that implements the IHttpHandler to transfer the current request to.
- writer
- TextWriter
The TextWriter to capture the output.
- preserveForm
- Boolean
true
to preserve the QueryString and Form collections; false
to clear the QueryString and Form collections.
Exceptions
An error occurred while executing the handler specified by handler
.
The handler
parameter is null
.
Remarks
You can write custom HTTP handlers to process specific, predefined types of HTTP requests in any language that is compliant with the Common Language Specification (CLS). Executable code that is defined in the HTTP handler classes instead of conventional ASP (also known as classic ASP) pages or ASP.NET pages responds to these specific requests. HTTP handlers allow for interacting with the low-level request and response services of a Web server that is running Internet Information Services (IIS), and they provide functionality that is similar to ISAPI extensions but with a simpler programming model.
ASP.NET does not verify that the current user is authorized to view the resource that is delivered by the Execute method. Although the ASP.NET authorization and authentication logic runs before the original resource handler is called, ASP.NET directly calls the handler that is indicated by the Execute method and does not rerun authentication and authorization logic for the new resource. If the security policy for your application requires clients to have appropriate authorization to gain access to the resource, the application should force reauthorization or provide a custom access-control mechanism.
You can force reauthorization by using the Redirect method instead of the Execute method. The Redirect performs a client-side redirect in which the browser requests the new resource. Because this redirect is a new request entering the system, it is subjected to all the authentication and authorization logic of both the IIS and ASP.NET security policy.
You can verify that the user has permission to view the resource by incorporating a custom authorization method that uses the IsInRole method before the application calls the Execute method.