В соответствии с этим link оба scan
и count
устарели.Elasticsearch 2.1 - Устаревшие типы поиска
Я пытаюсь изменить свои запросы, чтобы отразить это. Таким образом, изменение count
легко, просто удалив тип поиска и добавив size=0
к запросу, однако я не на 100% на изменение scan
.
В настоящее время у меня есть этот запрос:
var result = ElasticClient.Search<Product>(s => s
.From(0)
.Size(10)
.SearchType(SearchType.Scan)
.Scroll("4s")
.Query
(qu =>
qu.Filtered
(fil =>
fil.Filter
(f =>
f.Bool(b => b.Must(m => m.Term("filedName", "abc")))))));
Я правильно в моем понимании, что все, что мне нужно, чтобы изменить это удалить searchtype
и добавить sort
? То есть:
var result = ElasticClient.Search<Product>(s => s
.From(0)
.Size(10)
.Scroll("4s")
.Sort(x => x.OnField("_doc"))
.Query
(qu =>
qu.Filtered
(fil =>
fil.Filter
(f => f.Bool(b => b.Must(m => m.Term("filedName", "abc")))))));
Я видел перечисление SortSpecialField
here, но я не знаю, как на самом деле использовать это в параметре sort
.
Какую версию NEST вы используете? –
От nuget, elasticsearch.net и гнезда .... оба 1.7.1 –
NEST и Elasticsearch.NET 1.7.1 несовместимы с ES 2.x - они могут вообще работать, но есть изменения в Elasticsearch, которые не будут, например. ошибки. Существует предварительный релиз версии 2.x для NEST на nuget –