如何使用所有it工具复制mongo数据库';使用c#驱动程序的s集合?

如何使用所有it工具复制mongo数据库';使用c#驱动程序的s集合?,c#,mongodb,C#,Mongodb,我正在尝试使用c#driver使用copydb命令复制mongo数据库。 但它只是创建目标数据库,里面没有集合。 当我直接用mongo shell运行命令时,它工作得很好 以下是c代码: 它不能复制db1的集合 以下是我在mongo shell中运行并正常工作的命令: db.runCommand({copydb:1, fromdb:"db1", todb:"db2"}) 我遗漏了什么?尝试以下内容: var result = db.RunCommand( new Com

我正在尝试使用c#driver使用copydb命令复制mongo数据库。 但它只是创建目标数据库,里面没有集合。 当我直接用mongo shell运行命令时,它工作得很好

以下是c代码:

它不能复制db1的集合

以下是我在mongo shell中运行并正常工作的命令:

db.runCommand({copydb:1, fromdb:"db1", todb:"db2"})
我遗漏了什么?

尝试以下内容:

var result = db.RunCommand(
            new CommandDocument(new BsonElement("copydb", 1),
                new BsonElement("fromhost", "localhost"),
                new BsonElement("fromdb", "sourcedb"),
                new BsonElement("todb", "targetdb")));
下一个代码有效。这是C#MongoDB,驱动程序2.0

var database = mongoClient.GetDatabase("admin");
var command = @"{ copydb: 1, fromhost: 'localhost', fromdb: 'from', todb: 'toDbName'}";
await database.RunCommandAsync<BsonDocument>(BsonDocument.Parse(command));
var-database=mongoClient.GetDatabase(“admin”);
var command=@“{copydb:1,fromhost:'localhost',fromdb:'from',todb:'toDbName'}”;
wait database.RunCommandAsync(BsonDocument.Parse(command));

但它应该。这里工作很好。有什么例外吗?是否正在使用try-catch块引发异常?
var database = mongoClient.GetDatabase("admin");
var command = @"{ copydb: 1, fromhost: 'localhost', fromdb: 'from', todb: 'toDbName'}";
await database.RunCommandAsync<BsonDocument>(BsonDocument.Parse(command));