2012-08-14 45 views
4

我正在C#中執行烏鴉查詢,並利用Where()和Search()擴展方法。 我需要這兩個功能,因爲我只需要返回具有特定Guid字段的索引以及存在於文本正文中的文本。 不幸的是,Where擴展方法似乎與搜索擴展方法不兼容。當我將它們結合起來,我得到一個Lucene的查詢是這樣的:ravendb組合搜索與Where Where

Query: FeedOwner:25eb541c\-b04a\-4f08\-b468\-65714f259ac2 MessageBody:<<request*>> 

這似乎完全忽略該標準的「消息體」的一部分 - 所以它不事關我在「自由文本」使用的約束,它不用它。

我已經使用'搜索'單獨進行了測試,它的工作原理 - 所以它不是自己搜索自由文本的問題 - 只是將兩者結合起來。

回答

8

2009年,由於烏鴉@Tobias @誰向我指出了正確的方向Google網上論壇 - 有定義在哪裏以及搜索的條款將如何結合的一個選項:

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