0

我有以下代码:

 mongoServer.CopyDatabase(mongoDatabaseName, partitionName.Replace("__", string.Empty));
 mongoServer.DropDatabase(mongoDatabaseName);

我得到以下异常“NotImplementedException - 方法或操作未实现”。

这怎么可能?我犯了什么错?如何复制我的数据库?

4

1 回答 1

2

该异常是正确的,因为该CopyDatabase方法未实现。有关该问题的历史记录,请参阅JIRA 票证

相反,您需要'copydb'通过调用数据库来直接调用命令,RunCommandadmin答案中所述。所以像:

var adminDB = Server.GetDatabase("admin");
var command = new CommandDocument(new List<BsonElement> {
    new BsonElement("copydb", 1),
    new BsonElement("fromhost", "localhost"),
    new BsonElement("fromdb", mongoDatabaseName),
    new BsonElement("todb", partitionName.Replace("__", string.Empty))
});
var result = adminDB.RunCommand(command);
于 2013-10-14T03:01:06.537 回答