HttpServerUtility.Execute Метод

Определение

Выполняет действия обработчика для заданного ресурса в контексте текущего запроса и возвращает выполнение на страницу, которая его вызвала.Executes the handler for a specified resource in the context of the current request and returns execution to the page that invoked it.

Перегрузки

Execute(String)

Выполняет действия обработчика для заданного виртуального пути в контексте текущего запроса.Executes the handler for the specified virtual path in the context of the current request.

Execute(String, Boolean)

Выполняет действия обработчика для заданного виртуального пути в контексте текущего запроса и указывает, необходимо ли очистить коллекции QueryString и Form.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. TextWriter перенаправляет выходные данные выполненного обработчика.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. TextWriter перенаправляет выходные данные со страницы, а логический параметр указывает, необходимо ли очищать коллекции QueryString и Form.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. TextWriter перенаправляет выходные данные от выполненного обработчика, а логический параметр указывает, необходимо ли очищать коллекции QueryString и Form.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)

Параметры

path
String

Выполняемый URL-путь.The URL path to execute.

Исключения

Текущий объект HttpContext имеет значение null.The current HttpContext is null.

-или--or- Произошла ошибка при выполнении действий обработчика, заданного path.An error occurred while executing the handler specified by path.

Свойство path имеет значение null.path is null.

- или --or- path не является виртуальным путем.path is not a virtual path.

Примеры

В следующем примере отображается ASPX-страница "Updateinfo. aspx" в текущем каталоге.The following example displays the .aspx page "Updateinfo.aspx" in the current directory. Выполнение программы возвращается на начальную страницу после отображения страницы Updateinfo. aspx.Program execution returns to the starting page after the Updateinfo.aspx page is displayed.

Server.Execute("updateinfo.aspx");
   
Server.Execute("updateinfo.aspx")
   

Комментарии

Execute Метод продолжит выполнение исходной страницы после завершения выполнения новой страницы.The Execute method continues execution of the original page after execution of the new page is completed. Transfer Метод безусловно передает выполнение другому обработчику.The Transfer method unconditionally transfers execution to another handler.

ASP.NET не проверяет, является ли текущий пользователь полномочным для просмотра ресурса, доставленного Execute методом.ASP.NET does not verify that the current user is authorized to view the resource delivered by the Execute method. Несмотря на то, что логика авторизации и проверки подлинности ASP.NET запускается до вызова исходного обработчика ресурсов, ASP.NET напрямую Execute вызывает обработчик, указанный методом, и не перезапускает логику проверки подлинности и авторизации для нового ресурсов.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.

Можно принудительно выполнить повторную авторизацию с Redirect помощью метода вместо Execute метода.You can force reauthorization by using the Redirect method instead of the Execute method. Redirectвыполняет перенаправление на стороне клиента, в котором браузер запрашивает новый ресурс.Redirect performs a client-side redirect in which the browser requests the new resource. Поскольку это перенаправление является новым запросом, входящим в систему, он подчиняется всей логике проверки подлинности и авторизации как для службы IIS (IIS), так и для политики безопасности ASP.NET.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.

Можно проверить, имеет ли пользователь разрешение на просмотр ресурса, включив пользовательский метод авторизации, использующий IsInRole метод до того, как приложение Execute вызовет метод.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.

Execute(String, Boolean)

Выполняет действия обработчика для заданного виртуального пути в контексте текущего запроса и указывает, необходимо ли очистить коллекции QueryString и Form.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)

Параметры

path
String

Выполняемый URL-путь.The URL path to execute.

preserveForm
Boolean

Значение true — для сохранения коллекций QueryString и Form; false — для очистки коллекций QueryString и Form.true to preserve the QueryString and Form collections; false to clear the QueryString and Form collections.

Исключения

Текущий объект HttpContext имеет значение null.The current HttpContext is null.

-или--or- Произошла ошибка при выполнении действий обработчика, заданного path.An error occurred while executing the handler specified by path.

Свойство path имеет значение null.path is null.

- или --or- path не является виртуальным путем.path is not a virtual path.

Примеры

В следующем примере показано, как выполнить страницу Updateinfo.aspx ASPX в текущем запросе и QueryString сохранить коллекции и Form .The following example shows how to execute the .aspx page Updateinfo.aspx in the current request and preserve the QueryString and Form collections. Выполнение программы возвращается к начальной странице после Updateinfo.aspx отображения.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

Дополнительно

Execute(String, TextWriter)

Выполняет действия обработчика для заданного виртуального пути в контексте текущего запроса.Executes the handler for the specified virtual path in the context of the current request. TextWriter перенаправляет выходные данные выполненного обработчика.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)

Параметры

path
String

Выполняемый URL-путь.The URL path to execute.

writer
TextWriter

TextWriter для перенаправления выходных данных.The TextWriter to capture the output.

Исключения

Текущий объект HttpContext имеет значение null.The current HttpContext is null.

- или --or- Произошла ошибка при выполнении действий обработчика, заданного path.An error occurred while executing the handler specified by path.

Свойство path имеет значение null.path is null.

- или --or- path не является виртуальным путем.path is not a virtual path.

Примеры

Следующий пример выполняет Login.aspx страницу на сервере в текущем каталоге и получает выходные данные страницы StringWriter через объект writer.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. Он записывает поток HTML, полученный из writer , в поток вывода HTTP.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())
   

Комментарии

Execute Метод продолжит выполнение исходного запроса после завершения выполнения указанного виртуального пути.The Execute method continues execution of the original request after execution of the virtual path specified is completed. Transfer Метод безусловно передает выполнение другому обработчику.The Transfer method unconditionally transfers execution to another handler.

ASP.NET не проверяет, является ли текущий пользователь полномочным для просмотра ресурса, доставленного Execute методом.ASP.NET does not verify that the current user is authorized to view the resource delivered by the Execute method. Несмотря на то, что логика авторизации и проверки подлинности ASP.NET запускается до вызова исходного обработчика ресурсов, ASP.NET напрямую Execute вызывает обработчик, указанный методом, и не перезапускает логику проверки подлинности и авторизации для нового ресурсов.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.

Можно принудительно выполнить повторную авторизацию с Redirect помощью метода вместо Execute метода.You can force reauthorization by using the Redirect method instead of the Execute method. Redirectвыполняет перенаправление на стороне клиента, в котором браузер запрашивает новый ресурс.Redirect performs a client-side redirect in which the browser requests the new resource. Поскольку это перенаправление является новым запросом, входящим в систему, он подчиняется всей логике проверки подлинности и авторизации как для службы IIS (IIS), так и для политики безопасности ASP.NET.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.

Можно проверить, имеет ли пользователь разрешение на просмотр ресурса, включив пользовательский метод авторизации, использующий IsInRole метод до того, как приложение Execute вызовет метод.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.

Дополнительно

Execute(String, TextWriter, Boolean)

Выполняет действия обработчика для заданного виртуального пути в контексте текущего запроса.Executes the handler for the specified virtual path in the context of the current request. TextWriter перенаправляет выходные данные со страницы, а логический параметр указывает, необходимо ли очищать коллекции QueryString и Form.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)

Параметры

path
String

Выполняемый URL-путь.The URL path to execute.

writer
TextWriter

TextWriter для перенаправления выходных данных.The TextWriter to capture the output.

preserveForm
Boolean

Значение true — для сохранения коллекций QueryString и Form; false — для очистки коллекций QueryString и Form.true to preserve the QueryString and Form collections; false to clear the QueryString and Form collections.

Исключения

Текущий HttpContext является пустой ссылкой (Nothing в Visual Basic).The current HttpContext is a null reference (Nothing in Visual Basic).

-или--or- В конце path стоит точка (.).path ends with a period (.).

- или --or- Произошла ошибка при выполнении действий обработчика, заданного path.An error occurred while executing the handler specified by path.

Свойство path имеет значение null.path is null.

path не является виртуальным путем.path is not a virtual path.

Примеры

Следующий пример выполняет Login.aspx страницу на сервере в текущем каталоге и получает выходные данные страницы StringWriter через объект writer.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. Он записывает поток HTML, полученный из writer , в поток вывода HTTP.It writes the HTML stream received from writer to the HTTP output stream. Содержимое Form коллекций и QueryString сохраняется.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

Комментарии

Execute Метод продолжит выполнение исходного запроса после завершения выполнения указанного виртуального пути.The Execute method continues execution of the original request after execution of the specified virtual path is completed. Transfer Метод безусловно передает выполнение другому обработчику.The Transfer method unconditionally transfers execution to another handler.

ASP.NET не проверяет, является ли текущий пользователь полномочным для просмотра ресурса, доставленного Execute методом.ASP.NET does not verify that the current user is authorized to view the resource delivered by the Execute method. Несмотря на то, что логика авторизации и проверки подлинности ASP.NET запускается до вызова исходного обработчика ресурсов, ASP.NET напрямую Execute вызывает обработчик, указанный методом, и не перезапускает логику проверки подлинности и авторизации для нового ресурсов.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.

Можно принудительно выполнить повторную авторизацию с Redirect помощью метода вместо Execute метода.You can force reauthorization by using the Redirect method instead of the Execute method. Redirectвыполняет перенаправление на стороне клиента, в котором браузер запрашивает новый ресурс.Redirect performs a client-side redirect in which the browser requests the new resource. Поскольку это перенаправление является новым запросом, входящим в систему, он подчиняется всей логике проверки подлинности и авторизации как для службы IIS (IIS), так и для политики безопасности ASP.NET.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.

Можно проверить, имеет ли пользователь разрешение на просмотр ресурса, включив пользовательский метод авторизации, использующий IsInRole метод до того, как приложение Execute вызовет метод.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.

Дополнительно

Execute(IHttpHandler, TextWriter, Boolean)

Выполняет действия обработчика для заданного виртуального пути в контексте текущего запроса.Executes the handler for the specified virtual path in the context of the current request. TextWriter перенаправляет выходные данные от выполненного обработчика, а логический параметр указывает, необходимо ли очищать коллекции QueryString и Form.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)

Параметры

handler
IHttpHandler

Обработчик HTTP-данных, который содержит реализацию IHttpHandler, куда передается текущий запрос.The HTTP handler that implements the IHttpHandler to transfer the current request to.

writer
TextWriter

TextWriter для перенаправления выходных данных.The TextWriter to capture the output.

preserveForm
Boolean

Значение true — для сохранения коллекций QueryString и Form; false — для очистки коллекций QueryString и Form.true to preserve the QueryString and Form collections; false to clear the QueryString and Form collections.

Исключения

Произошла ошибка при выполнении действий обработчика, заданного handler.An error occurred while executing the handler specified by handler.

Параметр handler имеет значение null.The handler parameter is null.

Комментарии

Вы можете написать пользовательские обработчики HTTP для обработки определенных заранее определенных типов HTTP-запросов на любом языке, совместимом со спецификацией CLS.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). Исполняемый код, определенный в классах обработчика HTTP вместо обычных страниц ASP (также известных как классические страницы ASP) или страниц ASP.NET, реагирует на эти конкретные запросы.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 позволяют взаимодействовать со службами запросов и ответов нижнего уровня веб-сервера, на котором работает службы IIS (IIS), и предоставляют функциональные возможности, аналогичные расширениям ISAPI, но с более простой моделью программирования.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 не проверяет, имеет ли текущий пользователь разрешение на просмотр ресурса, который доставляется Execute методом.ASP.NET does not verify that the current user is authorized to view the resource that is delivered by the Execute method. Несмотря на то, что логика авторизации и проверки подлинности ASP.NET выполняется до вызова исходного обработчика ресурсов, ASP.NET напрямую вызывает обработчик Execute , который указывается методом, и не выполняет повторную проверку подлинности и логику авторизации для новый ресурс.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.

Можно принудительно выполнить повторную авторизацию с Redirect помощью метода вместо Execute метода.You can force reauthorization by using the Redirect method instead of the Execute method. Redirect Выполняет перенаправление на стороне клиента, в котором браузер запрашивает новый ресурс.The Redirect performs a client-side redirect in which the browser requests the new resource. Поскольку это перенаправление является новым запросом, входящим в систему, он подчиняется всей логике проверки подлинности и авторизации политики безопасности IIS и ASP.NET.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.

Можно проверить, имеет ли пользователь разрешение на просмотр ресурса, включив пользовательский метод авторизации, использующий IsInRole метод до того, как приложение Execute вызовет метод.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.

Дополнительно

Применяется к