none
Pasar variables entre paginas desde master page RRS feed

  • Pregunta

  • Hola

    La cuestion es la siguiente:

    Al iniciar la pagina principal del sitio, recibo dos parametros por URL, pero desde el master page necesito enviarlos a todas las paginas involucradas

    La unica restriccion es no usar variables de session

    Gracias


    Gracias Ing. Salomon Bagdadi

    miércoles, 25 de julio de 2012 16:51

Respuestas

  • Pueden ser varias razones:

    • Que algunos usuarios no estén admitiendo cookies.  ASP.net rastrea la sesión a través de cookies.  Si no hay cookie no hay sesión.
    • Que algunos usuarios estén entrando desde otra dirección y esa dirección no está programada para almacenar los valores; únicamente está programada para consumirlos.

    Si fuera el primer caso, pues el asunto es sencillo:  Que los usuarios habiliten cookies en el explorador.

    Si fuera el segundo caso, lo correcto es programar el almacenamiento de variables de sesión en el evento Session_Start en global.asax.  Luego los ASPX simplemente consumen el valor.  En caso de que el valor no exista significaría que nunca fue pasado, así que puede presentarse una página de error o de login, etc.


    Jose R. MCP
    Code Samples

    • Marcado como respuesta SaloBG miércoles, 25 de julio de 2012 22:30
    miércoles, 25 de julio de 2012 21:13
    Moderador

Todas las respuestas

  • hola

    no has evaluado usar la Session

    o sea

    Session["key"] = valor;

    eso podrias tomarlo des todas las paginas

    Nota: no olvides mencionar en que lenguaje programas, en vb.net se usa () en lugar de []


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    miércoles, 25 de julio de 2012 17:01
  • Si no es posible la sesión entonces lo único que queda es el query string.  Modifique todos los enlaces en las páginas para que incluyan la info.  No se me ocurre nada más.  Esto puede hacerse fácilmente con jQuery, pues es una única instrucción para modificar todos los enlaces, diría yo.

    Jose R. MCP
    Code Samples

    miércoles, 25 de julio de 2012 17:02
    Moderador
  • Hola Leandro

    Gracias por tu respuesta, esto lo hago pero el problema es que para algunos usuario funciona y para otros no

    Tendras alguna idea porque?

    Gracias de nuevo


    Gracias Ing. Salomon Bagdadi

    miércoles, 25 de julio de 2012 18:42
  • Gracias Jose

    El problema es que es desde un master page y tu seleccionas a que pagina se va cada opcion el del menu, como puedo poner los parametros en el master page?


    Gracias Ing. Salomon Bagdadi

    miércoles, 25 de julio de 2012 18:43
  • no entiendo como para unos usuario si y otros no ? eso es muy raro estas suiando el objeto Session

    recuerda no usar nunca variable definidas como static (c#)o shared (vb.net)


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    miércoles, 25 de julio de 2012 18:59
  • Mira en el master site pongo lo siguiente para atrapar la variable

    Session("MasterLoginID") = Request.QueryString("loginId")

    Y en las demas paginas pongo

    DirectCast(Session("MasterLoginID"), String)

    Esto lo pongo por que para ligar una pagina al menu principal del master page, solo puedo seleccionar la pagina y no se como enviar este parametro por ahi

    El problema es que en mi equipo si funciona correctamente, sin embargo en el equipo de otro usurio no pasa la variable

    Gracias


    Gracias Ing. Salomon Bagdadi

    miércoles, 25 de julio de 2012 19:08
  • Esto lo pongo por que para ligar una pagina al menu principal del master page, solo puedo seleccionar la pagina y no se como enviar este parametro por ahi

    es que no envias nada lo tomas directamente

    en la pagina usas

    Dim MasterLoginID As String = CStr(Session("MasterLoginID"))


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    miércoles, 25 de julio de 2012 19:22
  • Pueden ser varias razones:

    • Que algunos usuarios no estén admitiendo cookies.  ASP.net rastrea la sesión a través de cookies.  Si no hay cookie no hay sesión.
    • Que algunos usuarios estén entrando desde otra dirección y esa dirección no está programada para almacenar los valores; únicamente está programada para consumirlos.

    Si fuera el primer caso, pues el asunto es sencillo:  Que los usuarios habiliten cookies en el explorador.

    Si fuera el segundo caso, lo correcto es programar el almacenamiento de variables de sesión en el evento Session_Start en global.asax.  Luego los ASPX simplemente consumen el valor.  En caso de que el valor no exista significaría que nunca fue pasado, así que puede presentarse una página de error o de login, etc.


    Jose R. MCP
    Code Samples

    • Marcado como respuesta SaloBG miércoles, 25 de julio de 2012 22:30
    miércoles, 25 de julio de 2012 21:13
    Moderador
  • Gracias Jose

    Correcto el problema son las cookies, ya la configure y sirvio


    Gracias Ing. Salomon Bagdadi

    miércoles, 25 de julio de 2012 22:30