2012-01-12 16 views
5

En la página 1 del botón, haga clic en Redirigir la página a la página 2 con la página y compruebo si la página anterior es válida. . Así que verifico (this.Page.PreviousPage != null), pero esto siempre es nulo y la página se redirecciona a la página 1. Estoy haciendo esto para que nadie pueda cambiar el msgid en la url. ¿Cómo puedo resolver estos problemas? graciasCómo comprobar que la página se redirige de la página anterior o no en asp.net

Página1:

int msgid = Convert.ToInt32(Hidden_MsgID.Value); 
    string url = "Page2.aspx?MsgID=" + msgid; 
    Response.Redirect(url);  

Página2:

if (this.Page.PreviousPage != null) 
       { 
       } 
       else 
       { 
        Response.Redirect("Page1.aspx"); 
       } 

en lugar de response.redirect Solía ​​servidor. transferir y funciona Server.Transfer (string.Format ("ResponseMetric.aspx? MsgID = {0}", msgid));

Respuesta

1

Tal vez se puede utilizar una variable de sesión para comprobar si el flujo se sigue así .. Antes de su redireccionamiento puede establecer

Session["PREVPAGE"] = "fooo.aspx"; 

y recuperarlo en la carga de la página de la segunda página ...

+2

'Session' no es 100% confiable, ¿y si haces un reciclaje mientras tanto? –

Cuestiones relacionadas