Консоль C # пытается переопределить значение app.config для базы данных по умолчанию, используемой DatabaseFactory, не сохраняет изменения..CreateDatabase () - PullRequest
0 голосов
/ 29 марта 2012

Мне нужно переопределить значение DefaultDatabase в app.config, используемом DatabaseFactory.CreateDatabase() of DAAB

У меня есть код ниже, и это указывает на успешное изменение, но когда я ссылаюсь на базу данных по умолчанию позже в коде, он больше не имеет изменений, сохраненных с помощью кода ниже.Это происходит либо в режиме отладки, либо в виде скомпилированного exe.

Database db = DatabaseFactory.CreateDatabase();

кода для изменения значений 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



1 Ответ

0 голосов
/ 29 марта 2012

Попробуйте ConfigurationManager.RefreshSection("configuration"); вместо ConfigurationManager.RefreshSection("connectionStrings");

...