によって使用されるapp.configのDefaultDatabase値をオーバーライドする必要があります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値