Export (0) Print
Expand All

HttpServerUtility.Execute Method (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.

Namespace:  System.Web
Assembly:  System.Web (in System.Web.dll)

public void Execute(
	string path,
	TextWriter writer,
	bool preserveForm
)

Parameters

path
Type: System.String

The URL path to execute.

writer
Type: System.IO.TextWriter

The TextWriter to capture the output.

preserveForm
Type: System.Boolean

true to preserve the QueryString and Form collections; false to clear the QueryString and Form collections.

ExceptionCondition
HttpException

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.

ArgumentNullException

path is null.

ArgumentException

path is not a virtual path.

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.

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());
} 

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0

Community Additions

ADD
Show:
© 2014 Microsoft