Foros del Web » Programación para mayores de 30 ;) » .NET »

Form para connection strings?

Estas en el tema de Form para connection strings? en el foro de .NET en Foros del Web. Hola a todos. Requiero el código para hacer un formulario donde se pueda agregar los datos de conexion a la base de datos, tales como ...
 
Antiguo 08/04/2008, 09:28
 
Fecha de Ingreso: diciembre-2007
Mensajes: 35
Antigüedad: 18 años, 9 meses
Puntos: 0
Pregunta Form para connection strings?

Hola a todos.



Requiero el código para hacer un formulario donde se pueda agregar los datos de conexion a la base de datos, tales como Nombre Servidor, Nombre Base de Datos, Usuario y Password.



Buscando en la internet consigui el siguiente link, donde hace lo que quiero pero en VB.NET y lo necesito en C#:

http://www.codeproject.com/KB/dotnet/Change_AppConfig_File.aspx


Por favor si alguien me puede ayudar se lo agradezco.



Gracias.
 
Antiguo 08/04/2008, 09:32
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 19 años
Puntos: 87
Re: Form para connection strings?

Tu lo puedes hacer con un Configuration Manager y el manejo de strings para separar los datos y asi puedas administrar tu configuracion en app.configo web.config
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
 
Antiguo 08/04/2008, 09:58
 
Fecha de Ingreso: diciembre-2007
Mensajes: 35
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Form para connection strings?

Pero es que necesito agregar la información por un formulario.
 
Antiguo 08/04/2008, 10:15
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 19 años
Puntos: 87
Re: Form para connection strings?

por eso create tu formulario con algunos textbox

txtUsuario
txtDatabase
txtPassword
txtServidor


y despues usando un objeto ConfigurationManager (recuerda agregar la referencia a System.Configuration)

string conexion = ConfigurationManager.ConnectionStrings["conexion"].ConnectionString;

miconexion="User Id="+txtusuario.text+"; Password="txtpassword.text......
ConfigurationManager.ConnectionStrings["conexion"].ConnectionString=miconexion;
conexion lo modificas usando Regex o a mano creandolo
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
 
Antiguo 08/04/2008, 10:23
 
Fecha de Ingreso: diciembre-2007
Mensajes: 35
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Form para connection strings?

ok lo voy a probar y te digo a ver que tal!!!

Gracias.
 
Antiguo 08/04/2008, 10:33
 
Fecha de Ingreso: diciembre-2007
Mensajes: 35
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Form para connection strings?

Disculpa otra cosa, es un formulario para aplicaciones Windows...

No me aparece el ConfigurationManager... Creo que es por que lo estoy haciendo en Aplicaciones Windows.
 
Antiguo 08/04/2008, 10:55
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 19 años
Puntos: 87
Re: Form para connection strings?

Claro q si solo en tu proyecto agrega la referencia a System.Configuration
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
 
Antiguo 08/04/2008, 12:40
 
Fecha de Ingreso: febrero-2008
Mensajes: 74
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: Form para connection strings?

Hola!

Como te ha dicho peter está bien pensado, pero te doy un consejo pon @:

miconexion=@"User Id="+txtusuario.text+@"; Password="txtpassword.text.

A mi me dió error por eso te lo aconsejo que lo pongas.

Un saludo
 
Antiguo 08/04/2008, 13:34
 
Fecha de Ingreso: diciembre-2007
Mensajes: 35
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Form para connection strings?

Debo agregar algo en el app.config?

Al compilarlo me esta dando un error en la siguiente linea:

System.Configuration.ConfigurationManager.Connecti onStrings["conexion"].ConnectionString = miconexion;

Mensaje del error: Referencia a objeto no establecida como instancia de un objeto.

Ayuda!!!
 
Antiguo 08/04/2008, 13:38
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 19 años
Puntos: 87
Re: Form para connection strings?

si porq no lo has creado aun

System.Configuration.ConfigurationManager.Connecti onStrings.Add(new ConnectionStringSettings(nombre, cadenaconexion));

primero la creas y si existe


System.Configuration.ConfigurationManager.Connecti onStrings["conexion"].ConnectionString = miconexion; entocnes la actualizas

debes pensar en los 2 casos, el primero cuando generas la cadena y cuando la actualizas q ya sabes q se llama conexion o como le pongas.
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
 
Antiguo 08/04/2008, 14:44
 
Fecha de Ingreso: diciembre-2007
Mensajes: 35
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Form para connection strings?

Ok. lo hice de la siguiente manera:

string miconexion = @"User Id=" + txtUI.Text + @"; Password=" + txtPwd.Text + @";Server=" + txtServer.Text + @";Database=" + txtDatabase.Text + @"";

ConnectionStringSettings ConnStringSettings = new ConnectionStringSettings ();
ConfigurationManager.ConnectionStrings["strConn"].ConnectionString = miconexion;

y en el app.config coloque el siguiente codigo:

<connectionStrings>
<add name="strConn" connectionString="Server=nameServer;Database=nameD B;User ID=sa;Password=sa;Trusted_Connection=False;"
providerName="System.Data.SqlClient" />
</connectionStrings>

Y me da un error. Mensaje: La configuración es de sólo lectura.

Como puedo resolver?..
 
Antiguo 08/04/2008, 14:47
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 19 años
Puntos: 87
Re: Form para connection strings?

no lo hagas asi, pruebalo con la linea de Add q te mande

System.Configuration.ConfigurationManager.Connecti onStrings.Add(new ConnectionStringSettings(nombredetucadenaenwebconf ig, cadenaconexion));


y no agregues antes una cadena con el mismo nombre si no chocaran
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
 
Antiguo 08/04/2008, 14:49
 
Fecha de Ingreso: diciembre-2007
Mensajes: 35
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Form para connection strings?

ok, pero tengo confusion con respecto a el nombre y la cadena. Eso no lo entiendo, que va alli?
 
Antiguo 08/04/2008, 15:03
 
Fecha de Ingreso: diciembre-2007
Mensajes: 35
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Form para connection strings?

Como puedes ver la cadena en mi app.config se llama strConn y la cadema se llama miconexion, estoy colocando ambos y me da error.

lo coloque de la siguiente manera:
string conexion = System.Configuration.ConfigurationManager.Connecti onStrings.Add(new ConnectionStringSettings(strConn,miconexion));
 
Antiguo 08/04/2008, 15:10
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 19 años
Puntos: 87
Re: Form para connection strings?

asi

System.Configuration.ConfigurationManager.Connecti onStrings.Add(new ConnectionStringSettings("strConn",miconexion));
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
 
Antiguo 08/04/2008, 15:17
 
Fecha de Ingreso: diciembre-2007
Mensajes: 35
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Form para connection strings?

Para este caso tambien me da el mensaje de que la configuracion es de solo lectura...

Como se hace en estos casos?
 
Antiguo 08/04/2008, 15:32
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 19 años
Puntos: 87
Re: Form para connection strings?

config.ConnectionStrings.ConnectionStrings("servic eMasterConnectionString").ConnectionString = "new connection string"
config.Save()
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
 
Antiguo 08/04/2008, 15:35
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 19 años
Puntos: 87
Re: Form para connection strings?

Disculpa antes de seguir poniendo codigo pregunta

1.- estas integrando esta forma en tu solucion o
2.- estas haciendo una aplicacion para modificar el App.Config por fuera
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
 
Antiguo 08/04/2008, 15:41
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 19 años
Puntos: 87
Re: Form para connection strings?

Al no ser web (sorry si no me fije en ello)

lo q te queda es leer y modificar el xml por tu cuenta

public void UpdateKey(string strKey, string newValue)
{
if (!KeyExists(strKey))
throw new ArgumentNullException("La llave", "<" + strKey +
"> No existe en la configuracion de la aplicacion.");
XmlNode appSettingsNode =
xmlDoc.SelectSingleNode("configuration/appSettings");
// Attempt to locate the requested setting.
foreach (XmlNode childNode in appSettingsNode)
{
if (childNode.Attributes["key"].Value == strKey)
childNode.Attributes["value"].Value = newValue;
}
xmlDoc.Save(AppDomain.CurrentDomain.BaseDirectory +
"..\\..\\App.config");
xmlDoc.Save(AppDomain.CurrentDomain.SetupInformati on.ConfigurationFile);
}

algo asi

pero vas a tener q modificar el xml a mano
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta



La zona horaria es GMT -6. Ahora son las 23:01.