从MongoDB C#driver

时间:2015-07-24 12:26:12

标签: javascript c# mongodb stored-procedures

我试图在MongoDB的C#驱动程序中使用Variety,MongoDB(2.6)的自定义工具/脚本。

我能够通过命令行成功运行它,但我不确定如何在C#驱动程序中运行它。

  

bin \ mongo db --eval" var collection =' coll',limit = 20" BIN \ variety.js

1。 Javascript位置

当javascript位于bin\旁边的mongo.exe时,我运行了上面的命令。在the manual之后,我继续将文件放在\data\db\scripts中。但是我也读到了system.js文件。

\data\db\scripts正确的方式放置它?或者我必须在system.js

注册

2。运行脚本

在MongoDB中运行存储过程的

This example显示了如何使用两个参数执行方法。但是,Variety工具使用某种上下文变量,我需要提供它才能执行(例如collectionlimit)。在命令行中,它们以字符串形式提供,在脚本文件的名称之前进行评估。

命令行执行的等价物是什么?我无法获得result2变量。如何传递整个脚本文件而不是函数名称?

MongoClient client = new MongoClient("mongodb://0.0.0.0/db");
MongoServer server = client.GetServer();
MongoDatabase db = server.GetDatabase("db");

BsonValue result1 = db.Eval("var collection = 'coll', limit = 20");
BsonValue result2 = db.Eval(result1.AsBsonJavaScript.Code, "variety.js");

0 个答案:

没有答案