CLR: .Net / Mono / Boo / Otros CLR > ASP .NET

 Lanzar Una Pagina Con Condicion

(1/4) > >>

Maxus:
Os pongo en antecedentes:

 

Estoy desarrollando una pagina en ASP.net, necesito hacer que cuando haces click en una imagen se llame a una pagina (eso ya esta hecho), pero con una pequeña peculiaridad... y es que si uno de los campos de la imagen es distinto de NULL, que llame a otra pagina... A ver, intentare explicarme mejor.

 

Tengo un DataList y un Repeater en una pagina en la que cargo el 50% de las páginas. Es decir, en mi Web hay 2 tipos de páginas:

 

-Paginas con Pestañas

-Paginas con Contenido.

 

Las Pestañas las obtengo de la Base de Datos, tienen los siguientes campos (idPestana, Titulo, Contenido, Imagen, PestanaID) Esta tabla esta relacionada consigo misma, para conseguir recursividad e infinitos niveles.

 

La página en la que cargo las pestañas tiene este aspecto:

[IMAGEN 1]

 

Las páginas con Pestañas tienen esa estructura y cada pestaña puede contener otra página con pestañas o una pagina con contenido. La estructura de Contenido es diferente, tal que así:

[IMAGEN 2]

 

Como ves tengo 2 paginas por así decirlo principales, una en la que cargo las paginas con pestañas y otra donde cargo las paginas con Contenido. El problema que tengo es el siguiente:

 

Ahora mismo si haces clic en la página con Pestañas, navegas todo lo que quieras y el problema es que no se hacer para que cuando haces clic en una link de una pestaña que tiene contenido en vez de recargarme la Pagina de tipo 1, que me recargue la pagina de tipo 2.


                -Pagina de tipo 1 => Pestanas.aspx

                -Pagina de tipo 2 => Contenido.aspx

 

Yo entiendo que es una especie de <if>… algo como:

                Si la consulta que estamos haciendo tiene el campo de Contenido = NULL recarga la misma pagina con los valores que tenga que pasar….

 

                Sino, llama a la página Contenido.aspx y pasale los parámetros de la PestanaID.

 

El tema de pasar los parámetros no me preocupa porque ya lo tengo solucionado

 

MUCHISISIMAS GRACIAS POR TODO

 

UN ABRAZO

Javier Santamaria:
Los contenidos los cargas de la BD tambien de la tabla pestaña? Si es asi, supongo que cuando recuperes la pestaña puedes preguntar si contenido <> null y en caso afirmativo cargar la pagina de tipo 2.

Espero que te sirva, saludos

Maxus:
Si, exacto. Eso es lo que necesito, pero no se hacerlo ;D

Perdona por mi ignorancia, pero es mi primer proyecto de ASP.net y estoy aprendiendo.

Todos los datos los guardo en la misma tabla. Si no es mucha molestia, me podrias decir como poner esa condicion. ¿iria en el Page_load ? es que no tengo ni idea, yo he intentado ponerlo hay, pero me daba error de sintaxis.

Muchas gracias.

Javier Santamaria:
Podrias poner el codigo qeu haces para consultar a la base de datos y para luego mostrar los contenidos que te da el error de sintaxis a ver si viendolo te puedo echar una mano.

Maxus:
Gracias por tu tan rapida contestacion. Este es el error:

Error   1   Preprocessor directives must appear as the first non-whitespace character on a line

Y este es el codigo que tengo puesto:

<%
    string Cont =  <%# Eval("Contenido") %>;
   
    if(Cont != null || Cont =! "")
    {
        <a id="A1" href='<%# Eval("idPestana", "Contenido.aspx?PestanaID={0}") %>' runat="server">
            <img src='<%# Eval("Imagen") %>' alt="Imagen" />
        </a>
    }
    else
    {
        <a id="A2" href='<%# Eval("idPestana", "Turismo.aspx?PestanaID={0}") %>' runat="server">
            <img src='<%# Eval("Imagen") %>' alt="Imagen" />
        </a>
    }

 %>


Muchas gracias y a ver si me puedes hechar un cable.

Un saludo Javier

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa