在Elastic中处理来自SQL查询的响应,客户端.Elasticsearch 8.1.0 for .NET

lokaqttq  于 2023-04-29  发布在  ElasticSearch
关注(0)|答案(1)|浏览(195)

我有一个Elasticsearch集群,它是E。例如,包含称为persons的索引。我想使用Elasticsearch的SQL API查询索引的文档。当通过Kibana使用Elasticsearch的REST API时,一切正常:

POST /_sql?format=csv
{
  "query": "SELECT * FROM persons"
}

但是,我想在中执行此查询。NET Web API项目。因此,我使用a。NET客户端的Elasticsearch(Elastic.客户端.Elasticsearch 8.1.0)。我已经设置和配置了客户端,运行得很好。现在我尝试使用Elasticsearch执行与上面提到的相同的查询。NET客户端像这样:

var response = await _elasticsearchClient.Sql
                     .QueryAsync(q => q.Query("SELECT * FROM persons"));

当执行这个查询时,Elasticsearch返回一个有效的响应。但是,这个响应似乎不包含任何结果(即使索引persons包含文档)。更准确地说,我只能访问返回的列和游标,而不能访问返回的行。
是我错过了什么还是弹性。客户端.Elasticsearch 8.1.0客户端不完全支持SQL API?

smdnsysy

smdnsysy1#

原来这是一个与Elastic代码生成有关的bug。客户端.Elasticsearch 8.1.0 .NET客户端。有关更多详细信息,请参阅this讨论。这个bug已经由GitHub上的this issue解决,并将在版本8中修复。1.1.

相关问题