我使用Nest客户端使用ElasticSearch。我想在ElasticSearch中搜索:

SearchRequest countRequest = new SearchRequest
{
  //Somthing
};

client.Search<Post>(countRequest);

在另一方面 :
client.Search<Post>(s=>s.Index("IndexName").Query(...))

如何通过SearchRequest类搜索设置索引名称?

最佳答案

SearchRequest包含Indices属性,因此您可以指定多个索引进行搜索。在您的情况下,您可以像这样传递单个索引:

var request = new SearchRequest
{
    Indices = new IndexNameMarker[] { "IndexName" }
};

另一个选择是将Post类型映射到它所属的索引,并使用键入的SearchRequest<T>让NEST推断索引名称。

08-28 13:47