Dirigir de una pagina a otra de diferentes carpetas

15/03/2005 - 09:38 por Jordi Julià | Informe spam
Hola a todos,

Tengo un problema con el proyecto WebForms-VB.NET con el cual estoy
trabajando, es un
proyecto bastante grande y lo quiero estructurar en carpetas y subcarpetas.

Ahora tengo, por emeplo, páginas en la "Carpeta A" y páginas en la "Carpeta
B", cuando estoy en una página en la "Carpeta A" y quiero ir a una página de
la "Carpeta B" en el código de la página pongo:
"response.redirect("../Carpeta B/Pagina B.aspx")" y funciona.

El problema me aparece cuando incorporo Subcarpetas y pongo páginas en
ellas, si estoy ubicado en una página en una subcarpeta de la Carpeta A y
pongo la instrucción anterior me da error, debo utilizar la siguiente
instrucción "response.redirect("../../Carpeta B/Pagina B.aspx")", por lo que
intuyo debo poner un "../" por cada nivel que profundizo.

Existe alguna manera de hacer referencia a la ubicación primaria (raiz
principal del proyecto en el IIS) y a partir de ésta direccionar donde se
quiere ir. O alguien sabe donde puedo obtener información al respecto.

Saludos
Jordi

Preguntas similare

Leer las respuestas

#1 A.Poblacion
15/03/2005 - 12:27 | Informe spam
"Jordi Julià" wrote in message
news:
Hola a todos,

Tengo un problema con el proyecto WebForms-VB.NET con el cual estoy
trabajando, es un
proyecto bastante grande y lo quiero estructurar en carpetas y


subcarpetas.

Ahora tengo, por emeplo, páginas en la "Carpeta A" y páginas en la


"Carpeta
B", cuando estoy en una página en la "Carpeta A" y quiero ir a una página


de
la "Carpeta B" en el código de la página pongo:
"response.redirect("../Carpeta B/Pagina B.aspx")" y funciona.

El problema me aparece cuando incorporo Subcarpetas y pongo páginas en
ellas, si estoy ubicado en una página en una subcarpeta de la Carpeta A y
pongo la instrucción anterior me da error, debo utilizar la siguiente
instrucción "response.redirect("../../Carpeta B/Pagina B.aspx")", por lo


que
intuyo debo poner un "../" por cada nivel que profundizo.

Existe alguna manera de hacer referencia a la ubicación primaria (raiz
principal del proyecto en el IIS) y a partir de ésta direccionar donde se
quiere ir. O alguien sabe donde puedo obtener información al respecto.



Pudes usar rutas absolutas, es decir, que empiecen por "/":
Response.Redirect("/MiWeb/Carpeta B/Pagina B.aspx")

Si el "/MiWeb" puede variar (si no siempre instalas la aplicación bajo el
mismo directorio virtual), puedes consultarlo a través del objeto Request
(creo recordar que es Request.ApplicationPath).
Respuesta Responder a este mensaje
#2 Eduardo A. Morcillo [MS MVP VB]
15/03/2005 - 14:47 | Informe spam
La expresion ~/ representa la raiz de la aplicacion. Puedes usarlo entonce
para redireccionar a cualquier carpeta. Por ejemplo si tienes esta
estructura

/Carpeta1/Carpeta11/MiForm1.aspx
/Carpeta2/MiForm2.aspx

Para redireccionar desde MiForm1.aspx a MiForm2.aspx:

Response.Redirect("~/Carpeta2/MiForm2.aspx")

Como ~/ es la raiz de la aplicacion no importa cuan metido dentro de otra
estructura este la carpeta virtual en el servidor (a diferencia de solo /).

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
https://mvp.support.microsoft.com/p...4EF5A4191C

La investigación ha pregresado tantísimo,
que practicamente no queda nadie sano.
Aldous Huxley
Respuesta Responder a este mensaje
#3 Jordi Julià
15/03/2005 - 16:57 | Informe spam
Gracias! esto era lo que me hacía falta.

Saludos
Jordi





"Eduardo A. Morcillo [MS MVP VB]" <emorcilloATmvps.org> escribió en el
mensaje news:
La expresion ~/ representa la raiz de la aplicacion. Puedes usarlo entonce
para redireccionar a cualquier carpeta. Por ejemplo si tienes esta
estructura

/Carpeta1/Carpeta11/MiForm1.aspx
/Carpeta2/MiForm2.aspx

Para redireccionar desde MiForm1.aspx a MiForm2.aspx:

Response.Redirect("~/Carpeta2/MiForm2.aspx")

Como ~/ es la raiz de la aplicacion no importa cuan metido dentro de otra
estructura este la carpeta virtual en el servidor (a diferencia de solo


/).

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo



https://mvp.support.microsoft.com/p...104EF5A419
1C

La investigación ha pregresado tantísimo,
que practicamente no queda nadie sano.
Aldous Huxley


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida