Como modificar el ConnectionString en tiempo de ejecucion???

08/09/2006 - 05:43 por DuKe | Informe spam
Hola.
Lo que pasa es que estoy desarrollando en un equipo llamado EQUIPO1, ok,
entonces cuando publico mi aplicacion y posteriormente la instalo en los
equipos clientes, el connectionstring sigue apuntando a EQUIPO1 (pues me
conecto a SQL).

Lo que necesito es saber como puedo validar antes de la ejecucion en los pc
clientes, que se tiene acceso al servidor SQL escrito, y si no, ofrecer
elegir un nuevo servidor que podria ser escrito o presentado en una lista
(claro que esta facilidad no es el punto de discucion).

En definitiva, como puedo editar el connection string en tiempo de ejecucion
para hacer lo que mencione.

Gracias!

Preguntas similare

Leer las respuestas

#1 Jesús López
08/09/2006 - 11:27 | Informe spam
La verdad es que no entiendo qué quieres decir con "modificar
ConnectionString en tiempo de ejecución". ConnectionString es una propiedad
de SqlConnection y se establece en tiempo de ejecución así que haciendo:

cn.ConnectionString = "la cadena de conexión"

Habrás establecido la cadena de conexión en tiempo de ejecución.

Otra cuestión sería que la cadena de conexión la estuvieras guardando en el
archivo de configuración. Donde en tiempo de diseño la estableces y se guarda
en el archivo App.config que luego cuando se compila el proyecto se copia a
MiAplicación.exe.config. Si es así, lo normal es modificar
MiAplication.exe.config en tiempo de instalación y/o tener una utilidad para
modificarlo. MiAplication.exe.config no es más que un archivo XML, así que
puede modificarse usando XmlDocument.


Saludos:

Jesús López



"DuKe" escribió:

Hola.
Lo que pasa es que estoy desarrollando en un equipo llamado EQUIPO1, ok,
entonces cuando publico mi aplicacion y posteriormente la instalo en los
equipos clientes, el connectionstring sigue apuntando a EQUIPO1 (pues me
conecto a SQL).

Lo que necesito es saber como puedo validar antes de la ejecucion en los pc
clientes, que se tiene acceso al servidor SQL escrito, y si no, ofrecer
elegir un nuevo servidor que podria ser escrito o presentado en una lista
(claro que esta facilidad no es el punto de discucion).

En definitiva, como puedo editar el connection string en tiempo de ejecucion
para hacer lo que mencione.

Gracias!



Respuesta Responder a este mensaje
#2 Jorge Serrano [MVP VB]
08/09/2006 - 13:42 | Informe spam
Lo que debes hacer es leer la cadena de conexión que tienes, almacenada
"hardcode" en la aplicación o bien en algún fichero de configuración,
registro, ini,... y hacer un test de conexión.

Simplemente haces un método y conectas con esa cadena de conexión.
Luego haces un Open (todo esto dentro de un Try Catch y mejor aún usando
Using si utilizas VB 2005) y compruebas que se realiza la conexión.
Cierras la conexión si no la has cerrado, y dependiendo de si se ha
realizado la conexión, no haces nada, y si ha cambiado, llamas al formulario
que te diseñes para cambiar esa cadena de conexión. Y nuevamente en este
segundo caso, ejecutas el método o función de test de conexión nuevamente.

Recuerda que la cadena de conexión es sensible, así que siempre que puedas,
protégela o encríptala.

Un saludo.

Jorge Serrano Pérez
Microsoft MVP VB.NET
PortalVB.com
http://www.portalvb.com/
Blog de Jorge Serrano
http://geeks.ms/blogs/jorge/default.aspx


"DuKe" wrote:

Hola.
Lo que pasa es que estoy desarrollando en un equipo llamado EQUIPO1, ok,
entonces cuando publico mi aplicacion y posteriormente la instalo en los
equipos clientes, el connectionstring sigue apuntando a EQUIPO1 (pues me
conecto a SQL).

Lo que necesito es saber como puedo validar antes de la ejecucion en los pc
clientes, que se tiene acceso al servidor SQL escrito, y si no, ofrecer
elegir un nuevo servidor que podria ser escrito o presentado en una lista
(claro que esta facilidad no es el punto de discucion).

En definitiva, como puedo editar el connection string en tiempo de ejecucion
para hacer lo que mencione.

Gracias!



Respuesta Responder a este mensaje
#3 DuKe
08/09/2006 - 16:11 | Informe spam
Gracias por tu comentario.

"Jorge Serrano [MVP VB]"
escribió
en el mensaje news:
Lo que debes hacer es leer la cadena de conexión que tienes, almacenada
"hardcode" en la aplicación o bien en algún fichero de configuración,
registro, ini,... y hacer un test de conexión.

Simplemente haces un método y conectas con esa cadena de conexión.
Luego haces un Open (todo esto dentro de un Try Catch y mejor aún usando
Using si utilizas VB 2005) y compruebas que se realiza la conexión.
Cierras la conexión si no la has cerrado, y dependiendo de si se ha
realizado la conexión, no haces nada, y si ha cambiado, llamas al
formulario
que te diseñes para cambiar esa cadena de conexión. Y nuevamente en este
segundo caso, ejecutas el método o función de test de conexión nuevamente.

Recuerda que la cadena de conexión es sensible, así que siempre que
puedas,
protégela o encríptala.

Un saludo.

Jorge Serrano Pérez
Microsoft MVP VB.NET
PortalVB.com
http://www.portalvb.com/
Blog de Jorge Serrano
http://geeks.ms/blogs/jorge/default.aspx


"DuKe" wrote:

Hola.
Lo que pasa es que estoy desarrollando en un equipo llamado EQUIPO1, ok,
entonces cuando publico mi aplicacion y posteriormente la instalo en los
equipos clientes, el connectionstring sigue apuntando a EQUIPO1 (pues me
conecto a SQL).

Lo que necesito es saber como puedo validar antes de la ejecucion en los
pc
clientes, que se tiene acceso al servidor SQL escrito, y si no, ofrecer
elegir un nuevo servidor que podria ser escrito o presentado en una lista
(claro que esta facilidad no es el punto de discucion).

En definitiva, como puedo editar el connection string en tiempo de
ejecucion
para hacer lo que mencione.

Gracias!



Respuesta Responder a este mensaje
#4 DuKe
08/09/2006 - 16:14 | Informe spam
Me refereria a lo segundo, llevo solo un par de meses usando vb.net 2005 y
la verdad es que no se que se acostumbra en este caso.

Si tu me dices que es necesario hacer una utilidad añexa al proyecto
principal no me gusta, seria mas amigable para el usuario que la primera vez
que se ejecute la aplicacion pregunte por datos de seteo inicial, como el
servidor SQL.
Eso es lo que quiero hacer.

Pero por lo que ustedes me dicen, el archivo app.config no lo puedo
modificar en tiempo de ejecucion, asi que tendre que ingeniarmelas.

Gracias

"Jesús López" escribió en el mensaje
news:
La verdad es que no entiendo qué quieres decir con "modificar
ConnectionString en tiempo de ejecución". ConnectionString es una
propiedad
de SqlConnection y se establece en tiempo de ejecución así que haciendo:

cn.ConnectionString = "la cadena de conexión"

Habrás establecido la cadena de conexión en tiempo de ejecución.

Otra cuestión sería que la cadena de conexión la estuvieras guardando en
el
archivo de configuración. Donde en tiempo de diseño la estableces y se
guarda
en el archivo App.config que luego cuando se compila el proyecto se copia
a
MiAplicación.exe.config. Si es así, lo normal es modificar
MiAplication.exe.config en tiempo de instalación y/o tener una utilidad
para
modificarlo. MiAplication.exe.config no es más que un archivo XML, así que
puede modificarse usando XmlDocument.


Saludos:

Jesús López



"DuKe" escribió:

Hola.
Lo que pasa es que estoy desarrollando en un equipo llamado EQUIPO1, ok,
entonces cuando publico mi aplicacion y posteriormente la instalo en los
equipos clientes, el connectionstring sigue apuntando a EQUIPO1 (pues me
conecto a SQL).

Lo que necesito es saber como puedo validar antes de la ejecucion en los
pc
clientes, que se tiene acceso al servidor SQL escrito, y si no, ofrecer
elegir un nuevo servidor que podria ser escrito o presentado en una lista
(claro que esta facilidad no es el punto de discucion).

En definitiva, como puedo editar el connection string en tiempo de
ejecucion
para hacer lo que mencione.

Gracias!



Respuesta Responder a este mensaje
#5 Jesús López
08/09/2006 - 18:16 | Informe spam
Esa utilidad a la que me refiero, no tiene por qué ser un programa aparte,
sino que puede ser una funcionalidad dentro del propio programa. Y yo no he
dicho que no se pueda modificar el archivo de configuración en tiempo de
ejecución, he dicho que el archivo de configuración "no es más que un
archivo XML, así que puede modificarse usando XmlDocument".

Saludos:

Jesús López



"DuKe" escribió en el mensaje
news:
Me refereria a lo segundo, llevo solo un par de meses usando vb.net 2005 y
la verdad es que no se que se acostumbra en este caso.

Si tu me dices que es necesario hacer una utilidad añexa al proyecto
principal no me gusta, seria mas amigable para el usuario que la primera
vez que se ejecute la aplicacion pregunte por datos de seteo inicial, como
el servidor SQL.
Eso es lo que quiero hacer.

Pero por lo que ustedes me dicen, el archivo app.config no lo puedo
modificar en tiempo de ejecucion, asi que tendre que ingeniarmelas.

Gracias

"Jesús López" escribió en el mensaje
news:
La verdad es que no entiendo qué quieres decir con "modificar
ConnectionString en tiempo de ejecución". ConnectionString es una
propiedad
de SqlConnection y se establece en tiempo de ejecución así que haciendo:

cn.ConnectionString = "la cadena de conexión"

Habrás establecido la cadena de conexión en tiempo de ejecución.

Otra cuestión sería que la cadena de conexión la estuvieras guardando en
el
archivo de configuración. Donde en tiempo de diseño la estableces y se
guarda
en el archivo App.config que luego cuando se compila el proyecto se copia
a
MiAplicación.exe.config. Si es así, lo normal es modificar
MiAplication.exe.config en tiempo de instalación y/o tener una utilidad
para
modificarlo. MiAplication.exe.config no es más que un archivo XML, así
que
puede modificarse usando XmlDocument.


Saludos:

Jesús López



"DuKe" escribió:

Hola.
Lo que pasa es que estoy desarrollando en un equipo llamado EQUIPO1, ok,
entonces cuando publico mi aplicacion y posteriormente la instalo en
los
equipos clientes, el connectionstring sigue apuntando a EQUIPO1 (pues me
conecto a SQL).

Lo que necesito es saber como puedo validar antes de la ejecucion en los
pc
clientes, que se tiene acceso al servidor SQL escrito, y si no, ofrecer
elegir un nuevo servidor que podria ser escrito o presentado en una
lista
(claro que esta facilidad no es el punto de discucion).

En definitiva, como puedo editar el connection string en tiempo de
ejecucion
para hacer lo que mencione.

Gracias!









Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida