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 に答える