HttpServerUtility.Transfer Método

Definición

Finaliza la ejecución de la página actual e inicia la ejecución de una nueva página para la solicitud actual.Terminates execution of the current page and starts execution of a new page for the current request.

Sobrecargas

Transfer(String)

En el caso de la solicitud actual, finaliza la ejecución de la página actual e inicia la ejecución de una nueva página mediante la dirección URL de la página.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)

Finaliza la ejecución de la página actual e inicia la ejecución de una nueva página mediante la dirección URL de la página.Terminates execution of the current page and starts execution of a new page by using the specified URL path of the page. Especifica si borrar las colecciones QueryString y Form.Specifies whether to clear the QueryString and Form collections.

Transfer(IHttpHandler, Boolean)

Finaliza la ejecución de la página actual e inicia la ejecución de una nueva solicitud utilizando un controlador HTTP personalizado que implementa la interfaz IHttpHandler, y especifica si se deben borrar las colecciones de QueryString y 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)

En el caso de la solicitud actual, finaliza la ejecución de la página actual e inicia la ejecución de una nueva página mediante la dirección URL de la página.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)

Parámetros

path
String

Dirección URL de la nueva página en el servidor que se va a ejecutar.The URL path of the new page on the server to execute.

Comentarios

La página transferida a debe ser otra página. aspx.The page transferred to should be another .aspx page. Por ejemplo, una transferencia a una página. asp o. asmx no es válida.For instance, a transfer to an .asp or .asmx page is not valid. El método Transfer conserva las colecciones QueryString y Form.The Transfer method preserves the QueryString and Form collections.

Transfer llama a End, que produce una excepción ThreadAbortException al finalizar.Transfer calls End, which throws a ThreadAbortException exception upon completion.

ASP.NET no comprueba si el usuario actual está autorizado para ver el recurso entregado por el método Transfer.ASP.NET does not verify that the current user is authorized to view the resource delivered by the Transfer method. Aunque la lógica de autenticación y autorización de ASP.NET se ejecuta antes de que se llame al controlador de recursos original, ASP.NET llama directamente al controlador indicado por el método Transfer y no vuelve a ejecutar la lógica de autenticación y autorización para el nuevo recurso.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. Si la Directiva de seguridad de la aplicación requiere que los clientes tengan la autorización adecuada para acceder al recurso, la aplicación debe forzar la reautorización o proporcionar un mecanismo de control de acceso personalizado.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.

Puede forzar la reautorización mediante el método Redirect en lugar del método Transfer.You can force reauthorization by using the Redirect method instead of the Transfer method. El método Redirect realiza una redirección del lado cliente en la que el explorador solicita el nuevo recurso.The Redirect method performs a client-side redirect in which the browser requests the new resource. Dado que esta redirección es una nueva solicitud que entra en el sistema, está sujeta a toda la lógica de autenticación y autorización de la Directiva de seguridad de Internet Information Services (IIS) y 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.

Puede comprobar que el usuario tiene permiso para ver el recurso mediante la incorporación de un método de autorización personalizado que use el método IsInRole antes de que la aplicación llame al método 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)

Finaliza la ejecución de la página actual e inicia la ejecución de una nueva página mediante la dirección URL de la página.Terminates execution of the current page and starts execution of a new page by using the specified URL path of the page. Especifica si borrar las colecciones QueryString y 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)

Parámetros

path
String

Dirección URL de la nueva página en el servidor que se va a ejecutar.The URL path of the new page on the server to execute.

preserveForm
Boolean

true para mantener las colecciones QueryString y Form; false para borrar las colecciones QueryString y Form.true to preserve the QueryString and Form collections; false to clear the QueryString and Form collections.

Excepciones

La solicitud de página actual es una devolución de llamada.The current page request is a callback.

Ejemplos

En el ejemplo siguiente se ejecuta una nueva página en el mismo directorio que la página actual.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)

Comentarios

La página transferida a debe ser otra página. aspx.The page transferred to should be another .aspx page. Por ejemplo, una transferencia a una página. asp o. asmx no es válida.For instance, a transfer to an .asp or .asmx page is not valid.

Transfer llama a End, que produce una excepción ThreadAbortException al finalizar.Transfer calls End, which throws a ThreadAbortException exception upon completion.

Si establece el parámetro preserveForm en true, la página de destino podrá tener acceso al estado de vista de la página anterior mediante la propiedad 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.

Por motivos de seguridad, debe mantener el atributo enableViewStateMac establecido en true.For security purposes, you should keep the enableViewStateMac attribute set to true. ASP.NET no comprueba si el usuario actual está autorizado para ver el recurso entregado por el método Transfer.ASP.NET does not verify that the current user is authorized to view the resource delivered by the Transfer method. Aunque la lógica de autenticación y autorización de ASP.NET se ejecuta antes de que se llame al controlador de recursos original, ASP.NET llama directamente al controlador indicado por el método Transfer y no vuelve a ejecutar la lógica de autenticación y autorización para el nuevo recurso.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. Si la Directiva de seguridad de la aplicación requiere que los clientes tengan la autorización adecuada para acceder al recurso, la aplicación debe forzar la reautorización o proporcionar un mecanismo de control de acceso personalizado.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.

Puede forzar la reautorización mediante el método Redirect en lugar del método Transfer.You can force reauthorization by using the Redirect method instead of the Transfer method. El método Redirect realiza una redirección del lado cliente en la que el explorador solicita el nuevo recurso.The Redirect method performs a client-side redirect in which the browser requests the new resource. Dado que esta redirección es una nueva solicitud que entra en el sistema, está sujeta a toda la lógica de autenticación y autorización de la Directiva de seguridad de Internet Information Services (IIS) y 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.

Puede comprobar que el usuario tiene permiso para ver el recurso mediante la incorporación de un método de autorización personalizado que use el método IsInRole antes de que la aplicación llame al método 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)

Finaliza la ejecución de la página actual e inicia la ejecución de una nueva solicitud utilizando un controlador HTTP personalizado que implementa la interfaz IHttpHandler, y especifica si se deben borrar las colecciones de QueryString y 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)

Parámetros

handler
IHttpHandler

Controlador HTTP que implementa la interfaz IHttpHandler a la que se va a transferir la solicitud actual.The HTTP handler that implements the IHttpHandler to transfer the current request to.

preserveForm
Boolean

true para mantener las colecciones QueryString y Form; false para borrar las colecciones QueryString y Form.true to preserve the QueryString and Form collections; false to clear the QueryString and Form collections.

Excepciones

La solicitud de página actual es una devolución de llamada.The current page request is a callback.

Comentarios

Puede escribir controladores HTTP personalizados para procesar tipos de solicitudes HTTP específicos y predefinidos en cualquier lenguaje compatible con el Common Language Specification (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). El código ejecutable que se define en las clases de controlador HTTP en lugar de páginas ASP convencionales (también conocido como ASP clásico) o páginas ASP.NET responde a estas solicitudes específicas.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. Los controladores HTTP permiten interactuar con los servicios de solicitud y respuesta de bajo nivel de un servidor Web que ejecuta Internet Information Services (IIS) y proporcionan una funcionalidad similar a las extensiones ISAPI pero con un modelo de programación más sencillo.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.

Si establece el parámetro preserveForm en true, la página de destino podrá tener acceso al estado de vista de la página anterior mediante la propiedad 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.

Por motivos de seguridad, debe mantener el atributo enableViewStateMac establecido en true.For security purposes, you should keep the enableViewStateMac attribute set to true. ASP.NET no comprueba si el usuario actual está autorizado para ver el recurso entregado por el método Transfer.ASP.NET does not verify that the current user is authorized to view the resource delivered by the Transfer method. Aunque la lógica de autenticación y autorización de ASP.NET se ejecuta antes de que se llame al controlador de recursos original, ASP.NET llama directamente al controlador indicado por el método Transfer y no vuelve a ejecutar la lógica de autenticación y autorización para el nuevo recurso.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. Si la Directiva de seguridad de la aplicación requiere que los clientes tengan la autorización adecuada para tener acceso al recurso, la aplicación debe forzar la reautorización o proporcionar un mecanismo de control de acceso personalizado.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.

Puede forzar la reautorización mediante el método Redirect en lugar del método Transfer.You can force reauthorization by using the Redirect method instead of the Transfer method. El método Redirect realiza una redirección del lado cliente en la que el explorador solicita el nuevo recurso.The Redirect method performs a client-side redirect in which the browser requests the new resource. Dado que esta redirección es una nueva solicitud que entra en el sistema, está sujeta a toda la lógica de autenticación y autorización de la Directiva de seguridad de IIS y 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.

Puede comprobar que el usuario tiene permiso para ver el recurso mediante la incorporación de un método de autorización personalizado que use el método IsInRole antes de que la aplicación llame al método 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.

Se aplica a