Я использую ElasticSearch v6.4 с библиотеками Nest (v.6.4.2) и ElasticSearch. Net (v.6.4.2). Я пытаюсь использовать API поиска с моим запросом Raw Json.
Вот мой шаблон JSON Запрос:
var jsonQuery = @"{
"_source": {
"exclude": [],
"include": []
},
"query": {
"bool": {
"should": [
[
{
"multi_match": {
"query": "*",
"analyzer": "standard",
"type": "most_fields",
"fields": []
}
},
{
"multi_match": {
"query": "*",
"analyzer": "standard",
"type": "most_fields",
"fuzziness": 1,
"prefix_length": 3,
"fields": []
}
}
]
],
"filter": {
"bool": {
"must": [
{ "term": { "xx": "yy" } }
],
"must_not": [],
"should": [
{
"bool": {
"must": [
{ "term": { "xx": "yy" } },
{ "term": { "xx": "yy" } },
]
}
},
{
"bool": {
"must": [
{ "range": { "xx": { "gte": yy1, "lte": yy2 } } }
]
}
}
]
}
}
}
},
"from": 0,
"size": 500,
"min_score": 0.0,
"sort": [],
"aggs": {}
}"
Во-первых, когда я использую этот запрос с .Raw () возвращает ошибку с Invalid Low Level Call.
Во-вторых, когда я использую следующую функцию для получения результатов:
var responseData = _connectionToEs.EsClient(_esInstanceUrl, _indexName).LowLevel.Search<myClass>(jsonQuery);
Я получаю следующую ошибку: The type 'myClass' cannot be used as type parameter 'TResponse' in the generic type or method IElasticLowLevelClient.Search<TResponse>(PostData, SearchRequestParameters). There is no implicit reference conversion from 'myClass' to 'Elasticsearch.Net.IElasticsearchResponse'
.
Я застрял в этом довольно долгое время и не нашел никакого решения. Как я могу использовать необработанный запрос JSON для использования с функциями ElasticSearch. Net, если это будут функции Nest или функции низкого уровня? Пожалуйста помоги. Заранее спасибо !!!