• Domingo 22 de Diciembre de 2024, 11:31

Autor Tema:  Explorador De Archivos  (Leído 3521 veces)

Javier Santamaria

  • Miembro MUY activo
  • ***
  • Mensajes: 142
    • Ver Perfil
Explorador De Archivos
« en: Miércoles 16 de Mayo de 2007, 11:13 »
0
Hola, que tal?

Vamos a ver, tengo dos dudillas:

1. Tengo una pagina .aspx donde tengo un textbox para meter una ruta de un archivo. Me gustaria ademas poder poner algun boton para poder explorar los directorios del ordenador. Me podriais decir como puedo hacer que cuando pulse el boton se me abra un pop up para navegar por los directorios (tipo cuando descargas un archivo de internet y te dice que donde los quieres guardar) del ordenador y poder elegir el que yo quiera.

2. Una vez elegido dicho directorio, puedo modificar la connectionstring de mi BD en el web.config con la nueva ruta especificada.

Muchas gracias por adelantado.

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Explorador De Archivos
« Respuesta #1 en: Miércoles 16 de Mayo de 2007, 21:46 »
0
en primero lugar, cual es el requerimiento?, por qué modificar el conecctionString?

para usar tu explorar tienes que usar System.IO.

Saludos,


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

Javier Santamaria

  • Miembro MUY activo
  • ***
  • Mensajes: 142
    • Ver Perfil
Re: Explorador De Archivos
« Respuesta #2 en: Jueves 17 de Mayo de 2007, 11:39 »
0
Hola sergio, muchas gracias por tu repsuesta.

Un par de cosillas:

1. Mi requerimiento es que el usuario pueda a traves de la pagina web cambiar el destino de la BD que quiere usar. Es decir, imagina este escenario:

Tengo la BD "A" en "C:\A.mdb", la cual estoy usando en la aplicacion.

Ahora tengo la BD "B" en D:\B.mdb", la cual quiero empezar a usar a partir de ahora en lugar de usar "A".

(Obviamente las rutas pertenecen a un ordenador local y/o a un servidor web)

Pues el tema es que tengo una pagina donde por medio de un text box y/o ese boton para explorar archivos selecciono la localizacion de la nueva base de datos ("B") para sustituir el path del data source del connection string, de forma que ahora en lugar de apuntar a la BD "A", apunte al a BD "B".

Se entiende mejor ahora?

PD: Me podriais dar algun dato mas de que metodo usar del system.IO. para cargar el arbol de directorios y coger la ruta de un elemento seleccionado del arbol, en esa ventana que tengo que abrir.

Muchas gracias anticipadas por las respuestas.

Un saludo.

Javier Santamaria

  • Miembro MUY activo
  • ***
  • Mensajes: 142
    • Ver Perfil
Re: Explorador De Archivos
« Respuesta #3 en: Jueves 17 de Mayo de 2007, 13:39 »
0
Hola de nuevo,

Actualizo: este tema lo he solucionado con el control fileupload, pero ahora mi problema es que no se como coger la ruta completa del textbox, es decir, la ruta en fileupload.filename solo me devuelve el nombre del archivo (archivo.txt) y no la ruta completa (C:\temp\archivo.txt).

Sabria alguien como podria obtener toda la ruta? Estoy investigando, pero no veo ninguna manera de acceder al textbox del fileupload, donde si que pone la ruta completa.

Muchas gracias por adelantado, un saludo.

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Explorador De Archivos
« Respuesta #4 en: Jueves 17 de Mayo de 2007, 21:35 »
0
Server.MapPath("~/tuarchivo.aspx"), te devuelve la ruta en disco duro de tu servidor de ese archivo.

Ahora si quieres modificar la cadenacion de conexión, recuerda que las secciones del archivo web.config, se pueden cambiar en tiempo de ejecución.

Saludos,


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

Javier Santamaria

  • Miembro MUY activo
  • ***
  • Mensajes: 142
    • Ver Perfil
Re: Explorador De Archivos
« Respuesta #5 en: Viernes 18 de Mayo de 2007, 10:37 »
0
Cita de: "sergiotarrillo"
Server.MapPath("~/tuarchivo.aspx"), te devuelve la ruta en disco duro de tu servidor de ese archivo.

Ahora si quieres modificar la cadenacion de conexión, recuerda que las secciones del archivo web.config, se pueden cambiar en tiempo de ejecución.

Saludos,
Hola sergio, muchas gracias de nuevo, ahora:

1. (Server.MapPath) Si en lugar de la ruta en disco duro de mi servidor, quiero la ruta de en disco duro de mi ordenador local, es decir, quiero "C:\Temp\Archivo", donde el disco "C" esta en mi ordenador local desde el que accedo a internet y no en el servidor.
Para que lo veas mas claro:
Yo tengo una BD en el servidor y una BD local. Ahora tengo una pagina .aspx que me pide la ruta de mi BD local y me sincroniza esos datos (los locales) con los datos de la BD del servidor. Pues bien, lo que necesito es poder coger en el control fileupload la ruta completa de mi BD local (y no solo el nombre del archivo) para montar con ella una cadena de conexion y poder acceder a los datos locales para sincronizarlos con los del servidor. Para este proceso la ruta que necesito es la de la BD local, ya que la de la BD del servidor la tengo en el connectionstring del web.config.

2. (ConnectionString) En otra pagina .aspx distinta tengo que dar la posiblidad de cambiar la ruta de la BD del servidor. La nueva ruta tambien estara en el servidor. Por tanto, para esta otra pagina es para lo que necesito cambiar el web.config en tiempo de ejecucion, para que de ahora en adelante la ruta de la BD que use mi aplicacion sea la especificada. Y para esto querria saber si me puedes dar algunas nociones basicas o algun tutorial de ejemplo sobre como modificar el web.config en tiempo de ejecucion, para cambiar dicha connectionstring.

Muchas gracias por adelantado, un saludo.

Javier Santamaria

  • Miembro MUY activo
  • ***
  • Mensajes: 142
    • Ver Perfil
Re: Explorador De Archivos
« Respuesta #6 en: Lunes 21 de Mayo de 2007, 16:17 »
0
Hola de nuevo,

Bueno pues al final saco la ruta total del control fileupload de esta foprma:

FileUpload1.PostedFile.FileName

Espero que les sirva.

De todas formas me sigue haciendo falta como poder modificar el web.config en tiempo de ejecucion. Si alguien me echa una mano con ello se lo agradezco.

Gracias por adelantado.