2012-11-06 67 views
2

我对elasticsearch和NEST真的很陌生,所以对于基本问题感到抱歉。
我想了解如何搜索集合属性中匹配的所有文档。使用elasticsearch和NEST在一个集合中搜索匹配

我的弹性文档对象看起来是这样的:

[ElasticType(Name="my_document")] 
public class MyDocument 
{ 
    public long Id { get; set; } 
    public long[] TagIds { get; set; } 
} 

我想知道我如何寻找自己的TagIds财产在他们一定数量的文档。

我愿做这样的事情:

elasticClient.Search<MyDocument>(x => 
     x.Query(s => s.Terms(z => z.TagIds.Contains(searchVal)))); 

回答

3

发现,答案其实很简单,我只是不完全理解的文件,当我读到它。

我一直在寻找的查询是:

elasticClient.Search<MyDocument>(x => x.Query(s => s.Term(z => z.TagIds, tagIdStringToSearch))); 

注:我使用Term(),而不是Terms()。第二个参数是我在集合中寻找的tagId的字符串。 (这也可以是一个整数,在我的情况下它是一个很长的,所以我搜索字符串)

离开这个问题,所以它可能有助于别人有时... :)

相关问题