0

我正在尝试将过滤条件添加到针对 MongoDB 集合的文本搜索命令。我可以在 MongoLab 中成功运行该命令,但是我无法通过 MongoDB C# 驱动程序获得正确的语法来执行该命令。

以下返回所有匹配搜索条件但忽略过滤条件的记录:

var textSearchCommand = new CommandDocument
{
    {"text", "Post"},
    {"search", "motorcycle"},
    {"filter", @"{""Type"":1}"}
};

var commandResult = this.Collection.Database.RunCommand(textSearchCommand);

有人知道我做错了什么吗?

4

1 回答 1

3

正确的语法:

var filter = Query.EQ("Type", 1);
var textSearchCommand = new CommandDocument
{
    {"text", this.Collection.Name},
    {"search", searchString},
    {"filter", BsonValue.Create(filter)}
};

var commandResult = this.Collection.Database.RunCommand(textSearchCommand);
于 2013-10-02T13:49:31.473 回答