我知道,我是如此愚蠢,以至于我看不出怎样,但我对弹性搜索感到陌生。
我想知道如何进行简单的分页。
赞:1到10个 123,456 条目
我需要知道查询的总命中数,感觉对吗?
public long GetCount(SearchModel model)
{
return _elasticClient.Search<Document>(s => s
.Query(q => GetWhere(q, model))
).Total;
}
我没有使用From / Size,因为我想获取查询的总记录(这很简单)。
我尝试了ISearchResponse.Total并忽略了查询过滤器
一些建议将非常感谢,谢谢
答案 0 :(得分:3)
当您进行简单的文档搜索时,您应该只使用From
和Size
进行分页。返回的结果应该有一个hits.total表示,它是与您的查询匹配的文档总数。
hits集合虽然只有10个文档或你在(size)中定义的任何内容。
From / Size:
的示例var response = client.Search<Tweet>(s => s
.From(0)
.Size(10)
.Query(q =>
q.Term(t => t.User, "kimchy")
|| q.Match(mq => mq.Field(f => f.User).Query("nest"))
)
);
response.HitsMetaData.Total
应该有找到的文档总数。