HttpServerUtility.Transfer Метод

Определение

Прекращает выполнение текущей страницы и начинает выполнение новой страницы для текущего запроса.Terminates execution of the current page and starts execution of a new page for the current request.

Перегрузки

Transfer(String)

Для текущего запроса прекращает выполнение текущей страницы и начинает выполнение новой страницы с помощью заданного URL-пути к странице.For the current request, terminates execution of the current page and starts execution of a new page by using the specified URL path of the page.

Transfer(String, Boolean)

Прекращает выполнение текущей страницы и начинает выполнение новой страницы с помощью заданного URL-пути к странице.Terminates execution of the current page and starts execution of a new page by using the specified URL path of the page. Указывает, необходимо ли очистить коллекции QueryString и Form.Specifies whether to clear the QueryString and Form collections.

Transfer(IHttpHandler, Boolean)

Прекращает выполнение текущей страницы и начинает выполнение новой страницы при помощи пользовательского обработчика HTTP-данных, который содержит реализацию интерфейса IHttpHandler, и указывает, необходимо ли очистить коллекции QueryString и Form.Terminates execution of the current page and starts execution of a new request by using a custom HTTP handler that implements the IHttpHandler interface and specifies whether to clear the QueryString and Form collections.

Transfer(String)

Для текущего запроса прекращает выполнение текущей страницы и начинает выполнение новой страницы с помощью заданного URL-пути к странице.For the current request, terminates execution of the current page and starts execution of a new page by using the specified URL path of the page.

public:
 void Transfer(System::String ^ path);
public void Transfer (string path);
member this.Transfer : string -> unit
Public Sub Transfer (path As String)

Параметры

path
String

URL-путь новой выполняемой страницы на сервере.The URL path of the new page on the server to execute.

Комментарии

Страница, переданная в, должна быть другой страницей. aspx.The page transferred to should be another .aspx page. Например, перемещение на страницу. ASP или. asmx недопустимо.For instance, a transfer to an .asp or .asmx page is not valid. Метод сохраняет коллекцииForm и. QueryString TransferThe Transfer method preserves the QueryString and Form collections.

Transferвызывает Endметод, который ThreadAbortException вызывает исключение после завершения.Transfer calls End, which throws a ThreadAbortException exception upon completion.

ASP.NET не проверяет, является ли текущий пользователь полномочным для просмотра ресурса, доставленного Transfer методом.ASP.NET does not verify that the current user is authorized to view the resource delivered by the Transfer method. Несмотря на то, что логика авторизации и проверки подлинности ASP.NET запускается до вызова исходного обработчика ресурсов, ASP.NET напрямую Transfer вызывает обработчик, указанный методом, и не перезапускает логику проверки подлинности и авторизации для нового ресурсов.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 Transfer 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 помощью метода вместо Transfer метода.You can force reauthorization by using the Redirect method instead of the Transfer method. Redirect Метод выполняет перенаправление на стороне клиента, в котором браузер запрашивает новый ресурс.The Redirect method 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 метод до того, как приложение Transfer вызовет метод.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 Transfer method.

Transfer(String, Boolean)

Прекращает выполнение текущей страницы и начинает выполнение новой страницы с помощью заданного URL-пути к странице.Terminates execution of the current page and starts execution of a new page by using the specified URL path of the page. Указывает, необходимо ли очистить коллекции QueryString и Form.Specifies whether to clear the QueryString and Form collections.

public:
 void Transfer(System::String ^ path, bool preserveForm);
public void Transfer (string path, bool preserveForm);
member this.Transfer : string * bool -> unit
Public Sub Transfer (path As String, preserveForm As Boolean)

Параметры

path
String

URL-путь новой выполняемой страницы на сервере.The URL path of the new page on the server 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.

Исключения

Запрос текущей страницы — обратный звонок.The current page request is a callback.

Примеры

В следующем примере выполняется новая страница в том же каталоге, что и текущая страница.The following example executes a new page in the same directory as the current page.

Server.Transfer("Logon.aspx", true);

Server.Transfer("Logon.aspx", true)

Комментарии

Страница, переданная в, должна быть другой страницей. aspx.The page transferred to should be another .aspx page. Например, перемещение на страницу. ASP или. asmx недопустимо.For instance, a transfer to an .asp or .asmx page is not valid.

Transferвызывает Endметод, который ThreadAbortException вызывает исключение после завершения.Transfer calls End, which throws a ThreadAbortException exception upon completion.

Если для preserveForm trueпараметра задано значение, Целевая страница будет иметь доступ к состоянию представления PreviousPage предыдущей страницы с помощью свойства.If you set the preserveForm parameter to true, the target page will be able to access the view state of the previous page by using the PreviousPage property.

В целях безопасности enableViewStateMac атрибут должен иметь trueзначение.For security purposes, you should keep the enableViewStateMac attribute set to true. ASP.NET не проверяет, является ли текущий пользователь полномочным для просмотра ресурса, доставленного Transfer методом.ASP.NET does not verify that the current user is authorized to view the resource delivered by the Transfer method. Несмотря на то, что логика авторизации и проверки подлинности ASP.NET запускается до вызова исходного обработчика ресурсов, ASP.NET напрямую Transfer вызывает обработчик, указанный методом, и не перезапускает логику проверки подлинности и авторизации для нового ресурсов.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 Transfer 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 помощью метода вместо Transfer метода.You can force reauthorization by using the Redirect method instead of the Transfer method. Redirect Метод выполняет перенаправление на стороне клиента, в котором браузер запрашивает новый ресурс.The Redirect method 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 метод до того, как приложение Transfer вызовет метод.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 Transfer method.

Transfer(IHttpHandler, Boolean)

Прекращает выполнение текущей страницы и начинает выполнение новой страницы при помощи пользовательского обработчика HTTP-данных, который содержит реализацию интерфейса IHttpHandler, и указывает, необходимо ли очистить коллекции QueryString и Form.Terminates execution of the current page and starts execution of a new request by using a custom HTTP handler that implements the IHttpHandler interface and specifies whether to clear the QueryString and Form collections.

public:
 void Transfer(System::Web::IHttpHandler ^ handler, bool preserveForm);
public void Transfer (System.Web.IHttpHandler handler, bool preserveForm);
member this.Transfer : System.Web.IHttpHandler * bool -> unit
Public Sub Transfer (handler As IHttpHandler, preserveForm As Boolean)

Параметры

handler
IHttpHandler

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

preserveForm
Boolean

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

Исключения

Запрос текущей страницы — обратный звонок.The current page request is a callback.

Комментарии

Вы можете написать пользовательские обработчики 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.

Если для preserveForm trueпараметра задано значение, Целевая страница будет иметь доступ к состоянию представления PreviousPage предыдущей страницы с помощью свойства.If you set the preserveForm parameter to true, the target page will be able to access the view state of the previous page by using the PreviousPage property.

В целях безопасности enableViewStateMac атрибут должен иметь trueзначение.For security purposes, you should keep the enableViewStateMac attribute set to true. ASP.NET не проверяет, является ли текущий пользователь полномочным для просмотра ресурса, доставленного Transfer методом.ASP.NET does not verify that the current user is authorized to view the resource delivered by the Transfer method. Несмотря на то, что логика авторизации и проверки подлинности ASP.NET запускается до вызова исходного обработчика ресурсов, ASP.NET напрямую Transfer вызывает обработчик, указанный методом, и не перезапускает логику проверки подлинности и авторизации для нового ресурсов.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 Transfer 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 access the resource, the application should force reauthorization or provide a custom access-control mechanism.

Можно принудительно выполнить повторную авторизацию с Redirect помощью метода вместо Transfer метода.You can force reauthorization by using the Redirect method instead of the Transfer method. Redirect Метод выполняет перенаправление на стороне клиента, в котором браузер запрашивает новый ресурс.The Redirect method 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 метод до того, как приложение Transfer вызовет метод.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 Transfer method.

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