c# - 使用 C# 的 NEST 客户端使用 Elasticsearch 获取重复结果
问题描述
我在下面有以下代码,用于从我的 Elsaticsearch 索引返回结果。我已将 from 大小设置为非常小的 5。在我的测试中,我得到了 45 个与我的查询匹配的文档,但是因为我正在迭代并且一次只得到 5 个,我似乎得到了重复。
我想要一些可以返回 45 条唯一记录中的每一条的东西。但是,我不知道我哪里出错了?我似乎也无法访问此服务器上的滚动 API。
public async Task<IReadOnlyCollection<Models_Find_RemoteHostedContentItem>>
FindAllDocumentsBySingleField(string fieldName, string fieldValue)
{
long total;
do
{
var searchResponse = await _client.SearchAsync<Models_Find_RemoteHostedContentItem>(s =>
s.Query(q => q.Match(m => m.Field(fieldName).Query(fieldValue))).Size(5).From(_docs.Count));
total = searchResponse.Total;
var docs = searchResponse.Documents;
_docs.AddRange(docs);
} while (_docs.Count != total);
return _docs;
}
解决方案
推荐阅读
- r - 如何仅在 plotly 或 ggplot2 中绘制残差?
- python-requests - Plone 自己发出第二个 http 请求
- grid - Bootstrap 4 Grid 14 col 两行大小相同
- kotlin - 流和通道流有什么区别?
- java - 通过 LYO 获取 DOORS 属性类型
- java - 如何读取默认接口方法中的实现类?
- python - 使用 Python 3.8 和 macOS15 (Catalina) 的 pymc3 的 Theano 锁定问题
- c# - 仅当按下某个组合键时,如何将 WPF 控件的不透明度从 0 更改为 100%?
- specifications - ECMA CLI 规范:值类型的 initobj 指令描述
- sql - 在 Apply 块中使用需要表参数的标量函数