Я пытаюсь найти входное слово в любом индексе или документе вasticsearch, используя NEST в c #
Я уже пробовал simple_string_query
, match_all
, _search
(самый простой запрос),ничего из этого не сработало, и я каждый раз получаю одно и то же сообщение об ошибке.
var conn = new ConnectionSettings(new Uri("<elasticsearchEndpoint>))
.DefaultIndex(model.Index)
.DefaultTypeName(model.Type);
var client = new ElasticClient(conn);
var res = client.Search<dynamic*>(c=>c
.AllIndices()
.AllTypes()
.Query(q=>q
.QueryString(qs=>qs.Query(model.Query)
)
));
Я также пытался использовать класс myObject
Я ожидаю получить список документов, содержащий входное словоили хотя бы список идентификаторов документов.
Ниже приведена ошибка:
Elasticsearch.Net.UnexpectedElasticsearchClientException: 'Невозможно десериализовать текущий объект JSON (например, имя {}":" value "}) в тип 'System.Int64', потому что для корректной десериализации тип требует JSON-примитивное значение (например, string, number, boolean, null).Чтобы исправить эту ошибку, либо измените JSON на примитивное значение JSON (например, string, number, boolean, null) или измените десериализованный тип так, чтобы это был нормальный тип .NET (например, не примитивный тип, такой как целое число, а не тип коллекции).как массив или список), который может быть десериализован из объекта JSON.JsonObjectAttribute также можно добавить к типу, чтобы заставить его десериализоваться из объекта JSON.Путь 'hit.total.value', строка 1, позиция 116. '