Alternativas a response.redirect - DotNetClubs
en

DotNetClubs

Comunidades de estudiantes entusiastas de la tecnología

Alternativas a response.redirect

Último artículo 04-07-2008 18:52 escrito por carmenMariar. 4 respuestas.
Página 1 de 1 (5 elementos)
Ordenar mensajes: Anterior Siguiente
  • 04-07-2008 10:23

    Alternativas a response.redirect

     Una pregunta:

     Estoy en una pagina pag1.aspx, en la que estoy metiendo datos en TextBox para guardar en SQL. En uno de ellos reenvio al cliente a pag2 .aspx para obtener informacion pero tengo que seguir obteniendo los datos en pag1.aspx
    Al enviar de la pag2 a la pag1 lo hago con un response.redirect, evidentemente al volver a la pag1 ha pasado por el page_load y hemos perdido toda la informacion que escribimos antes. ¿como podria pasar de pag2 a pag1 sin que volviese a hacer page_load?

    Muchas gracias!!

    • Puntos de post: 20
  • 04-07-2008 11:27 en respuesta a

    • FranDiaz
    • Contribuyente Top 10
    • Se unió el 12-18-2006
    • Huelva
    • Envíos: 76
    • Puntos: 450
    • DotNetClub_Coordinadores
      DotNetClub_Miembros
      DotNetClubs_AdminTeam

    Re: Alternativas a response.redirect

    Hola Carmen,

    ¿Has probado a hacer utilizar la función Page.IsPostBack?.

     Tienes más información acerca de esta propiedad en: http://msdn2.microsoft.com/es-es/library/system.web.ui.page.ispostback(VS.80).aspx

     Ya nos contarás Wink.

    Un Saludo

    Fran Díaz
    Coordinador OnobaNET & UHUDotNetClub
    http://geeks.ms/blogs/fdiaz
    Archivado en:
    • Puntos de post: 20
  • 04-07-2008 12:33 en respuesta a

    Re: Alternativas a response.redirect

    Ante todo muchas gracias por la respuesta, pero he estado probado con un ejemplo:

    --- pag1.aspx.cs---

    protected void Page_Load(object sender, EventArgs e){ 

      if (!Page.IsPostBack)
        {
             Label1.Text = "Primer acceso a la página";
         }
        else
        {
          
    Label1.Text =" No es nuestro primer acceso";
        }

     }

    Si desde la pag2 hago el Response.Redirect (pag1.aspx); cuando entramos de nuevo en pag1.aspx siempre me muestra "primer acceso a la pagina" 

    • Puntos de post: 20
  • 04-07-2008 18:12
    [ Marcado como respuesta ]
    en respuesta a

    • Makinsc
    • Contribuyente Top 50
    • Se unió el 03-20-2007
    • Envíos: 16
    • Puntos: 150
    • DotNetClub_Coordinadores
      DotNetClub_Miembros

    Re: Alternativas a response.redirect

    Answer

     Buenas, podrías hacerlo de muchísimas formas, pero se me ocurre una, (la más rápida y menos profesional) es usar querystrings. Es decir, en la pag2 cuando yarecojas los datos que necesitas, llamas a pagina 1 de la siguiente manera

    response.redirect("pag1.aspx?dato1=" + valor1 + "&dato2=" + valor2)  // así con todos los valores que quieras transmitir.

    y en el page load de pag1.aspx hacer lo siguiente

     

    protected void Page_Load(object sender, EventArgs e){  

      if (request.querystrigs.count>0)// Si hay parámetros
        {
    rellenar(request.querystring["dato1"].ToString(),
    request.querystring["dato2"].ToString())     }

    // Si no trae parametros es que es la primera vez que se carga la pag1
        else
        {
          if(!IsPostback)

            {

               LO QUE SEA
     

            }
        }

     }

     

    No obstante, no estaría nada mal que aprendieses otras técnicas más profesionales, como puedes ver en este articulo

     

    http://www.elguille.info/colabora/NET2005/lveliz_TecnicasNavegacionNET.htm

     

    Espero haberte podido ayudar.

    Cuentanos si te ha servido

     

    Un Saludo 

    Archivado en:
    • Puntos de post: 20
  • 04-07-2008 18:52 en respuesta a

    Re: Alternativas a response.redirect

     Muchas gracias, Habia intentado el metodo rapido, pero..habia nueve variables Embarrassed. Por eso buscaba otro forma. La información del articulo ha venido clavada.

    Muchas gracias de nuevo 

    • Puntos de post: 5
Página 1 de 1 (5 elementos)
(c) DotNetClubs 2008
Ofrecido por Community Server (Commercial Edition)