エンドツーエンドのテストで、「テスト」データベースを削除してから、新しいテスト データベースを作成したいと考えています。データベース全体を削除するのは簡単です:
mongoose.connection.db.command( {dropDatabase:1}, function(err, result) {
console.log(err);
console.log(result);
});
しかし、どうすればテストデータベースを作成できますか? docscreateDatabase
にまたはuseDatabase
コマンドが見つかりません。切断して再接続する必要がありますか、それとも適切なコマンドがありますか? データベースを作成する唯一の方法がサーバーへの接続の副次的効果であるとしたら、それは奇妙なことです。
アップデート
データベースを作成するように見えるC# コードを見つけました。接続し、データベースをドロップし、(切断せずに) 再度接続し、新しいデータベースを作成するようです。これが今のところ行うことです。
public static MongoDatabase CreateDatabase()
{
return GetDatabase(true);
}
public static MongoDatabase OpenDatabase()
{
return GetDatabase(false);
}
private static MongoDatabase GetDatabase(bool clear)
{
var connectionString = ConfigurationManager.ConnectionStrings["MongoDB"].ConnectionString;
var databaseName = GetDatabaseName(connectionString);
var server = new MongoClient(connectionString).GetServer();
if (clear)
server.DropDatabase(databaseName);
return server.GetDatabase(databaseName);
}