Usuário com melhor resposta
Como alterar a connection string em tempo de execução - Urgente

Pergunta
-
Amigos, estou preciso muito de ajuda.
Eu desenvolvi um aplicativo em VB + WPF + Entity voltado pra desktop, está tudo funcionando. Agora eu preciso instalar o aplicativo no cliente, porém quando eu gerei o modelo, foi salvo a connection string no app.config normalmente. O problema é que o caminho do banco de dados no meu cliente é diferente do meu computador, eu preciso que quando o aplicativo seja executado o caminho do banco na connection string seja alterado, com fazer isso? (em outra palavras, como fazer o modelo se conectar em outro servidor quando a aplicação for executada, sem que eu tenha que mudar manualmente no app.config).
obrigado.
Ricardo S. Pulini
Respostas
-
Ricardo você tem algumas opções nesse caso...
Como disse o Malange você pode gravar um arquivo texto ou xml com o caminho para o BD e carregar o APP config por lá.
Para alterar o App config ou simplesmente montar a string de conexão vc deve fazer assim:
using System.Configuration;
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
string con = "Data Source="+ SEU_DATASOURCE +";Initial Catalog="+ CAMINHO_DO_BANCO +";User ID="+ LOGIN +";Password="+ SENHA;
config.ConnectionStrings.ConnectionStrings["NOME_DATA_SUA_CONNECTIONSTRING"].ConnectionString = con;
config.Save(ConfigurationSaveMode.Modified); // Salva o que foi modificado
ConfigurationManager.RefreshSection("connectionStrings"); // Atualiza no app o bloco connectionStrings
Properties.Settings.Default.Reload(); // Recarrega os dados de conexão
O segredo é vc saber os dados da sua string de conexão...
espero ter ajudado
- Marcado como Resposta Ricardo S. Pulini quinta-feira, 17 de março de 2011 11:08
Todas as Respostas
-
Amigos, estou preciso muito de ajuda.
Eu desenvolvi um aplicativo em VB + WPF + Entity voltado pra desktop, está tudo funcionando. Agora eu preciso instalar o aplicativo no cliente, porém quando eu gerei o modelo, foi salvo a connection string no app.config normalmente. O problema é que o caminho do banco de dados no meu cliente é diferente do meu computador, eu preciso que quando o aplicativo seja executado o caminho do banco na connection string seja alterado, com fazer isso? (em outra palavras, como fazer o modelo se conectar em outro servidor quando a aplicação for executada, sem que eu tenha que mudar manualmente no app.config).
obrigado.
Ricardo S. Pulinicria a sua propria app.config num ficheiro texto e pega o caminho apartir dai ele aoutomatucamente grava como caminho certo na aplicacao.
Just Be Humble Malange! -
Ricardo você tem algumas opções nesse caso...
Como disse o Malange você pode gravar um arquivo texto ou xml com o caminho para o BD e carregar o APP config por lá.
Para alterar o App config ou simplesmente montar a string de conexão vc deve fazer assim:
using System.Configuration;
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
string con = "Data Source="+ SEU_DATASOURCE +";Initial Catalog="+ CAMINHO_DO_BANCO +";User ID="+ LOGIN +";Password="+ SENHA;
config.ConnectionStrings.ConnectionStrings["NOME_DATA_SUA_CONNECTIONSTRING"].ConnectionString = con;
config.Save(ConfigurationSaveMode.Modified); // Salva o que foi modificado
ConfigurationManager.RefreshSection("connectionStrings"); // Atualiza no app o bloco connectionStrings
Properties.Settings.Default.Reload(); // Recarrega os dados de conexão
O segredo é vc saber os dados da sua string de conexão...
espero ter ajudado
- Marcado como Resposta Ricardo S. Pulini quinta-feira, 17 de março de 2011 11:08
-
-
-
-