Nest - 如何执行 SpanFirstQuery?

Nest - how to do a SpanFirstQuery?

我正在尝试使用 NEST 进行 SpanFirstQuery,如中所述:

https://www.elastic.co/guide/en/elasticsearch/reference/1.4/query-dsl-span-first-query.html

SpanFirstQuery class 有一个 Match 属性,但是 Match 属性 是一个 ISpanQuery,它有一个 SpanFirst 属性 即一个 ISpanFirstQuery。这似乎是一个无限循环。

我很困惑..

如何使用 NEST 进行 spanfirstquery?

谢谢。

NEST 中的 span_first 查询可以像这样非常简单地完成:

var s = new SearchDescriptor<ElasticsearchProject>()
    .Query(q => q
        .SpanFirst(sf=>sf
            .MatchTerm(f => f.User, "kimchy")
            .End(3)
        )
    );

这将产生与官方文档中描述的相同的查询:

{
    "span_first" : {
        "match" : {
            "span_term" : { "user" : "kimchy" }
        },
        "end" : 3
    }
}