Мигрирование гнезда в Elastic.Clients.elasticsearch Не найдено картированиеC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Мигрирование гнезда в Elastic.Clients.elasticsearch Не найдено картирование

Сообщение Anonymous »

У меня есть какой -то код, соединяющийся с Elastic, который я переезжаю, и я подумал, что это будет хорошее время, чтобы мигрировать из Nest 7.17.4 в Elastic.client.elasticsearch 8.19.5, поскольку гнездо больше не поддерживается, и у нас не будет выбора, кроме как сделать это, если и когда мы перейдем к Elasticsearch 9 из наших текущих 8. Обратите внимание: это приложение, которое просто запросит это, если и когда мы перейдем в Elasticsearch 9. Он не должен и не должен вставлять или обновлять какие -либо записи. С эластичной стороны сопоставления существуют, если я вызовут конечную точку _mapping.

Код: Выделить всё

        [Nest.Date(Name = "start")]
public DateTimeOffset DtStart { get; set; }
< /code>
и все работало нормально. Но теперь у меня есть это, так как эти атрибуты Nest 
больше не доступны:

Код: Выделить всё

        [JsonPropertyName("start")]
public DateTimeOffset DtStart { get; set; }
< /code>
и пробовать простой запрос, как это: < /p>
            var search = client.SearchAsync
(s => s
.SourceIncludes(fields)
.From(from)
.Size(size)
.Sort(sort => sort.Field(f => f.DtStart, SortOrder.Desc))
.TrackTotalHits(true)
.MaxConcurrentShardRequests(elasticMaxShards)
.Timeout(defaultQueryTimeout)
.AllowPartialSearchResults(false)
, cancel);
< /code>
Создайте правильный запрос для отправки в Elastic: < /p>
{
"from": 0,
"size": 10,
"sort": {
"start": {
"order": "desc"
}
},
"timeout": "30s",
"track_total_hits": true
}
< /code>
, который хорошо работает, консоль кибана."No mapping found for [start] in order to sort on"
< /code>
На эластичной стороне я вижу, что отображение выглядит так: < /p>
        "start": {
"type": "date"
}
Но я не могу понять, где и как ровно Нужно мне сказать, что это поле даты, что, я полагаю, является тем, что он получает от атрибута nest.date . У меня есть целая куча других полей в Poco -объектах, которые нуждаются в картировании (например, [ключевое слово (сходство = "boolean", indexoptions = indexoptions.docs)] ), но я не могу преодолеть это первое препятствие, чтобы даже начать думать о них.
Я подумал, что мне нужно было сделать что -то такое:

Я подумал, что мне нужно было сделать что -то:

. client.Indices.Create
(indexName, index => index
.Mappings(x => x.Properties(ps => ps
.Date(s => s.DtStart))
)
);
< /code>
Но это, похоже, тоже не работает. То же самое без ошибки отображения.


Подробнее здесь: https://stackoverflow.com/questions/797 ... ping-found
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Проблема C# Elastic.Clients.Elasticsearch MatchAll()
    Anonymous » » в форуме C#
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Проблема C# Elastic.Clients.Elasticsearch MatchAll()
    Anonymous » » в форуме C#
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Параметр Django ALLOWED_HOSTS для экземпляра Elastic Beanstalk за Elastic Load Balancer
    Anonymous » » в форуме Python
    0 Ответы
    121 Просмотры
    Последнее сообщение Anonymous
  • Параметр Django ALLOWED_HOSTS для экземпляра Elastic Beanstalk за Elastic Load Balancer
    Anonymous » » в форуме Python
    0 Ответы
    87 Просмотры
    Последнее сообщение Anonymous
  • Как я могу обрабатывать Elastic.CommonSchema.NLog с помощью Elastic.NLog.Targets
    Anonymous » » в форуме C#
    0 Ответы
    74 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»