none
Alterar connectionStrings RRS feed

  • Pergunta

  • Eu estou tentando alterar a minha string de conexão dinamicamente no WPF usando o Entity mas não estou conseguindo.

    Eu dei pesquisei e testei alguns exemplos que mas sem sucesso, no momento estou usando o seguinte código...

                // Specify the provider name, server and database.
                string providerName = "System.Data.SqlClient";
                string serverName = "aps-serverdev01";
                string databaseName = "ASCS";
                string User = "sa";
                string Password = "shell";
                string APP = "EntityFramework";
    
                // Initialize the connection string builder for the
                // underlying provider.
                SqlConnectionStringBuilder sqlBuilder =
                    new SqlConnectionStringBuilder();
    
                // Set the properties for the data source.
                sqlBuilder.DataSource = serverName;
                sqlBuilder.InitialCatalog = databaseName;
                sqlBuilder.UserID = User;
                sqlBuilder.ApplicationName = APP;
                sqlBuilder.Password = Password;
                sqlBuilder.IntegratedSecurity = true;
    
                // Build the SqlConnection connection string.
                string providerString = sqlBuilder.ToString();
    
                // Initialize the EntityConnectionStringBuilder.
                EntityConnectionStringBuilder entityBuilder =
                    new EntityConnectionStringBuilder();
    
                //Set the provider name.
                entityBuilder.Provider = providerName;
    
                // Set the provider-specific connection string.
                entityBuilder.ProviderConnectionString = providerString;
    
                // Set the Metadata location.
                entityBuilder.Metadata = @"res://*/ASCSEF.csdl|res://*/ASCSEF.ssdl|res://*/ASCSEF.msl";
                
                using (EntityConnection conn =
                    new EntityConnection(entityBuilder.ToString()))
    
                //MyNewDatabaseEntities context = new MyNewDatabaseEntities(conn);
    
                {
                    conn.Open();
                    MessageBox.Show("Just testing the connection"); //A conexão abre normalmente
                    conn.Close();
                }
    
                Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
    
                config.ConnectionStrings.ConnectionStrings["ASCSEntities"].ConnectionString = entityBuilder.ToString();
    
                config.Save(); // Salva o que foi modificado
                MessageBox.Show(config.ConnectionStrings.ConnectionStrings["ASCSEntities"].ConnectionString);
                ConfigurationManager.RefreshSection("connectionStrings"); // Atualiza no app o bloco connectionStrings
    
                Properties.Settings.Default.Reload(); // Recarrega os dados de conexão

    Como a conexão está abrindo normalmente eu acredito que o erro esta quando estou tentando alterar o string de conexão do meu aplicativo,  help me..


    • Editado Jhonas Nobre quinta-feira, 19 de dezembro de 2013 12:08 Coloquei o cód errado...
    quinta-feira, 19 de dezembro de 2013 11:02

Todas as Respostas

  • Então ... não tem isso! não existe isso (não funciona isso)

    Faça um centra de conexão guardando tudo isso em xml!

    Apesar que minha dica principal, é não fazer isso!


    Fulvio Cezar Canducci Dias


    terça-feira, 24 de dezembro de 2013 13:09