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



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

我存储的 JavaScript 函数 GetUserInfo

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

执行:

db.loadServerScripts();
GetUserInfo();

它返回包含以下文档的集合(这里我只粘贴了 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,第一和第二。

我强烈建议您重新考虑"存储过程"策略。虽然我赞赏你为集中和干燥代码所做的努力,但MongoDB中的eval将扼杀性能和并发性。

最新更新