我有具有默认设置的ElasticSearch客户端。
elasticClient = new ElasticLowLevelClient();
我也有一个简单的帖子实体。
[ElasticsearchType(IdProperty = "Id", Name = "post")]
public class Post
{
[Number(Name = "id")]
public int Id { get; set; }
[Text(Name = "title")]
public string Title { get; set; }
[Text(Name = "description")]
public string Description { get; set; }
}
我想执行与Es文档中的查询类似的查询:
var searchResults = client.Search<Post>(p=>p
.From(0)
.Size(10)
.Query(q=>q
.Term(p=>p.Title, "stackoverflow")
)
);
但是我认为ES API已更改。第一个参数应该是PostData。这就是为什么我不知道查询外观的原因。
我的ElasticSearch的版本是2.3.5
NEST的版本是5.0.1
也许我需要较低版本的NEST?
最佳答案
您正在从Elasticsearch.Net
实例化low level client的实例。
如果您改用NEST的高级客户端,一切都会很好
var elasticClient = new ElasticClient();
在内部,NEST使用低级客户端,这就是为什么
Elasticsearch.Net
作为依赖项引入的原因。
关于c# - 如何使用NEST API搜索数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41975860/