0

I need to override the DefaultDatabase value in the app.config used by DatabaseFactory.CreateDatabase() of DAAB

I have the code below, and it indicates the change succeeds, but when I reference the default database later in the code, it no longer has the changes saved by the code below. This happens whether in debug mode or as a compiled exe.

Database db = DatabaseFactory.CreateDatabase();

code to change the app.config

        Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
            var dbSettings = (DatabaseSettings)ConfigurationManager.GetSection("dataConfiguration");

        string connectionString = ConfigurationManager.ConnectionStrings[dbSettings.DefaultDatabase].ConnectionString;

        connectionString = connectionString.Replace("DATABASETOREPLACE", dstuff.Database).Replace("SERVERTOREPLACE", dstuff.Server);

        config.ConnectionStrings.ConnectionStrings[dbSettings.DefaultDatabase].ConnectionString = connectionString;

        config.Save(ConfigurationSaveMode.Modified, true);
        ConfigurationManager.RefreshSection("connectionStrings");

app.config values



Tigran
  • 61,654
  • 8
  • 86
  • 123
user825374
  • 21
  • 1
  • 3

1 Answers1

0

Try ConfigurationManager.RefreshSection("configuration"); instead of ConfigurationManager.RefreshSection("connectionStrings");

Andrei Schneider
  • 3,618
  • 1
  • 33
  • 41
  • nope. Now when I execute this line of code: string connectionString = ConfigurationManager.ConnectionStrings[dbSettings.DefaultDatabase].ConnectionString; I get a connectionstring with an empty DataSource and an empty Initial_Catalog. the userid and password are correct – user825374 Mar 29 '12 at 20:00