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