【发布时间】:2021-02-01 06:45:00
【问题描述】:
NEST/Elasticsearch.Net 版本:5.6.5
Elasticsearch 版本:5.4.3
我们正在尝试使用 LowLevelClient 从我们的索引中获取结果。我们正在使用下面的SearchAsync API
var searchDescriptor = new SearchDescriptor<MyType>()
.Type("mytype")
.Index("myindex")
.Query(....)
.Aggregation(ag => ag.Terms(... Aggregation(ag1 => ag1.Min(...TopHits(...)))));
var memoryStream = new MemoryStream();
_client.Serializer.Serialize(searchDescriptor, memoryStream);
var response = await _client.LowLevel.SearchAsync<byte[]>(memoryStream.ToArray()).ConfigureAwait(false);
//_client - instance of Nest.ElasticClient
//Next Step - Deserialize the response
这也给了我来自其他索引的结果(来自各种索引的结果的组合)并且我的反序列化正在中断。客户端忽略类型和索引名称并在弹性搜索上调用 POST /_search API 而不是 POST /myindex/mytype/_search
注意:
- 我们需要调用较低级别的客户端,因为出于性能考虑,我们正在使用自定义反序列化器
这里有什么问题?
【问题讨论】:
标签: elasticsearch elasticsearch-5 elasticsearch-net