C # MongoDB IAsyncCursor Объяснить - PullRequest
0 голосов
/ 05 декабря 2018

У меня в данный момент есть текстовый индекс в моих данных.Я выполняю поиск по регулярному выражению и хочу убедиться, что используется правильный индекс.В оболочке mongo я только что использовал объяснение , но как я могу использовать объяснение в драйвере C #?

Вот как я выполняю свой запрос:

    public async Task<IEnumerable<GridFSFileInfo>> Find(string fileName)
    {
        var filter = Builders<GridFSFileInfo>.Filter.Regex(x => x.Filename, $"/.*{fileName}.*/i");
        var options = new FindOptions
        {
            Modifiers = new BsonDocument("$hint", "filename_text")
        };
        var result = new List<GridFSFileInfo>();

        using (var cursor = await Collection.Find(filter, options).ToCursorAsync())
        {
            while (await cursor.MoveNextAsync())
            {
                var batch = cursor.Current;
                result.AddRange(batch);
            }
        }

        return result;
    } 

Есть ли что-то вроде Collection.Find (фильтр, опции) .Explain () , который возвращает строку или что-то еще?Я искал в Интернете и обнаружил следующее: Существует ли "запрос объяснения" для MongoDB Linq? Однако, похоже, нет способа объяснения ...

...