我是ElasticSearch .NET集成的新手。我正在搜索我的索引数据(我已经索引了超过10000条记录,但是当我搜索时,我只得到最多250条记录,即使所有10000条记录都应该出现,因为所有记录都以搜索到的值开始
请查看我写的查询:
string UniqueID ='h';
var result = client.Search<MemberListDto>(s => s
.Query(q =>
q.MatchPhrasePrefix((mq => mq.Field(f => f.UniqueID).Query(UniqueID)))
));
return result.Total;
注意:所有UniqueID值均以&#39; h&#39;而我正在给予UniqueID =&#39; h&#39;只要。
请帮助我,如果满足查询字词值,如何计算所有10000条记录。
这是我想要索引的POCO C#类对象:
public class MemberListDto
{
[String(Analyzer = "keyword", SearchAnalyzer = "keyword")]
public string UniqueID { get; set; }
[String(Analyzer ="keyword",SearchAnalyzer ="keyword")]
public string Name{ get; set; }
}
以下是我试图对MemberListDto对象列表进行批量索引的通用代码:
public void CreateBulkIndex<T>(List<T> data, string indexName, string typeName) where T : class
{
if (!_client.IndexExists(ElasticConfig.IndexName).Exists)
{
var indexDescriptor = new CreateIndexDescriptor(ElasticConfig.IndexName)
.Mappings(ms => ms
.Map<T>(m => m.AutoMap()));
_client.CreateIndex(ElasticConfig.IndexName, i => indexDescriptor);
}
_client.Bulk(b => b.IndexMany(data, (d, doc) => d.Document(doc).Index(indexName)));
}