在C#.Net中调用MongoDB存储的Javascript函数

我需要在C#代码中调用MongoDB存储的JavaScript函数。

我存储的JavaScript函数GetUserInfo

function() { return db.getCollection('Profession').find({}); } 

执行:

 db.loadServerScripts(); GetUserInfo(); 

它返回带有以下文档的Collection(这里我只粘贴了2个文档,实际上我有超过10K的文档)

 { "_id" : ObjectId("575845a713d284da0ac2ee81"), "Profession_id" : "575841b313d284da0ac2ee7d", "Prof_Name" : "Chief Officer" } { "_id" : ObjectId("575845d213d284da0ac2ee82"), "Profession_id" : "575841b313d284da0ac2ee7d", "Prof_Name" : "Executive Officer" } 

在C#中:

 IMongoClient _client; IMongoDatabase _database; _client = new MongoClient(); _database = _client.GetDatabase("SampleDB"); 

请帮助我如何在C#代码中调用MongoDB存储的JavaScript函数。

以下问题使用Eval 。 在最新的驱动程序中, 我无法找到扩展函数_database.Eval

通过C#调用MongoDB中的存储过程

请帮助我……

您可以使用RunCommand方法执行eval命令。 我们已将其从API本身中删除,因为我们不希望您使用它。 看看这些部分,了解为什么不应该使用eval, first和second 。

我强烈建议你重新考虑你的“存储过程”策略。 虽然我赞扬你集中和干掉代码的努力,但MongoDB中的eval会破坏性能和并发性。