Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

HttpResponse.Redirect (Método) (String, Boolean)

Redirecciona un cliente a una nueva dirección URL. Especifica la nueva URL y si la ejecución de la página actual debe finalizar.

Espacio de nombres:  System.Web
Ensamblado:  System.Web (en System.Web.dll)

public void Redirect(
	string url,
	bool endResponse
)

Parámetros

url
Tipo: System.String
Ubicación del destino.
endResponse
Tipo: System.Boolean
Indica si la ejecución de la página actual debe terminar.

ExcepciónCondición
ArgumentNullException

url es null.

ArgumentException

url contiene un carácter de nueva línea.

HttpException

La redirección se intenta cuando se han enviado los encabezados HTTP.

ApplicationException

La solicitud de página es el resultado de una devolución de llamada.

Se puede especificar una dirección URL absoluta (por ejemplo, http://www.contoso.com/default.aspx) o una dirección URL relativa (por ejemplo, Default.aspx) para la ubicación de destino, aunque algunos exploradores pueden rechazar una dirección relativa.

Cuando use este método en un controlador de páginas para poner fina a una solicitud de una página e iniciar una nueva solicitud para otra página, establezca endResponse en false y, a continuación, llame al método CompleteRequest. Si especifica true para el parámetro endResponse, este método llama al método End para la solicitud original, que produce una excepción ThreadAbortException cuando se completa. Esta excepción tiene un efecto perjudicial en el rendimiento de la aplicación web; por este motivo, se recomienda pasar false para el parámetro endResponse. Para obtener más información, vea el método End.

NotaNota

En el caso de páginas móviles, si la aplicación se basa en sesiones sin cookies o puede recibir solicitudes de dispositivos móviles que requieren sesiones sin cookies, el uso de una tilde (~) en una ruta de acceso puede crear una nueva sesión y potencialmente perder los datos de la sesión. Para establecer una propiedad en un control móvil con una ruta de acceso como "~/ruta de acceso", resuelva la ruta utilizando ResolveUrl "~/ruta de acceso" antes de su asignación a la propiedad.

ASP.NET realiza la redirección devolviendo un código de estado HTTP 302. Una manera alternativa de transferir el control a otra página es el método Transfer. El método Transfer es habitualmente más eficiente, porque no produce un viaje de ida y vuelta al cliente. Para obtener más información, vea How to: Redirect Users to Another Page.

El ejemplo siguiente utiliza la propiedad IsClientConnected para comprobar si el cliente que solicita la página permanece conectado al servidor. Si IsClientConnected es true, el código llama al método Redirect y el cliente verá otra página. Si IsClientConnected es false, el código llama al método End y se termina el procesamiento de páginas.


<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

    private void Page_Load(object sender, EventArgs e)
    {
        // Check whether the browser remains
        // connected to the server.
        if (Response.IsClientConnected)
        {
            // If still connected, redirect
            // to another page. 
            Response.Redirect("Page2CS.aspx", false);
        }
        else
        {
            // If the browser is not connected
            // stop all response processing.
            Response.End();
        }
    }

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
    </form>
</body>
</html>


.NET Framework

Compatible con: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft