我希望能够从C#运行任何MongoDB命令。我知道这是可以做到的。我从一个简单的例子开始,我尝试使用db.runCommand
方法删除数据库,而不是使用C#驱动程序中的dropDatabase
方法,如下所示。
我尝试了两种方法,将命令作为字符串传递,也将命令作为BsonDocument
传递,但都不起作用,我没有任何错误的线索,即使在互联网上搜索后,我也找不到合适的例子。
我真的很难确定为什么这段代码不起作用。
作为字符串传递的命令:
database.RunCommand<string>("{dropdatabase : 1}");
作为BSON文档传递的命令:
var command = new BsonDocument { {"dropdatabase", "1" } };
var execute = database.RunCommand<BsonDocument>(command);
您可以使用这样的JsonCommand
:
var command = new JsonCommand<BsonDocument>("{ dropDatabase: 1 }");
db.RunCommand(command);
或者使用类似这样的CommandDocument
:
var command = new CommandDocument("dropDatabase", 1);
db.RunCommand<BsonDocument>(command);