ravendb将搜索与Where结合起来

Ada*_*dam 4 full-text-search ravendb

我正在C#中执行raven查询,并使用Where()和Search()扩展方法.我需要这两个功能,因为我只需要返回具有特定Guid字段的索引,以及存在于文本正文中的文本.不幸的是,Where扩展方法似乎与Search扩展方法不兼容.当我将它们组合在一起时,我得到一个像这样的Lucene查询:

    Query:  FeedOwner:25eb541c\-b04a\-4f08\-b468\-65714f259ac2 MessageBody:<<request*>>
Run Code Online (Sandbox Code Playgroud)

这似乎完全忽略了标准的'MessageBody'部分 - 所以我在'自由文本'中使用的约束并不重要,它不使用它.

我已经单独使用'搜索'进行了测试,并且它可以工作 - 所以它本身就是自由文本搜索的问题 - 只需将两者结合起来.

Ada*_*dam 8

感谢Raven @ GoogleGroups上的@Tobias指出了我正确的方向 - 有一个选项可以定义Where和Search子句的组合方式:

Query<T>.Search(candidate => candidate.MessageBody, queryString + "*", options: SearchOptions.And);
Run Code Online (Sandbox Code Playgroud)