ravendb搜索:括号和/或

时间:2014-04-01 21:06:29

标签: c# linq ravendb

我试图在乌鸦数据库中进行搜索。目前,我有以下数据模型。

public class DocumentModel
{
    int[] Tag {get;set;}
    int From {get;set;}
    int[] To {get;set;}
}

我的搜索参数将包含要搜索的标记列表,以及可以位于from或to字段中的用户ID列表。我已经能够通过搜索方法搜索用户是否在“发件人”或“收件人”字段中,并将搜索选项设置为SearchOptions.Or,并且我已经能够执行相同操作标签。但是,我现在需要的是

(Tag1 || Tag2 ) && (From || To)

这可能吗?

谢谢。

编辑:我使用Linq方法进行查询,所以我更喜欢这种形式的答案。

Edit2:我可以有一个userIds列表和一个标签列表,但我可能有两个中的一个,两个,或两者都没有。目前,我已经开始使用string.join(' OR')标记,将其放在.Search中,并在电子邮件字段的.Search上进行交叉。有更好/更简单的方法吗?

1 个答案:

答案 0 :(得分:0)

RavenDB完全支持括号,并以这种方式排序。 我们建议使用AND / OR但是&& / ||也支持。

你可以在Linq做到。