Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 197688|Ответ: 35

[Источник] [Настоящий бой]. net/c# Вызов elasticsearch поиска через NEST [с исходным кодом]

[Скопировать ссылку]
Опубликовано 20.12.2018 17:32:53 | | | |
ElasticSearch:

ES — это платформа поиска почти в реальном времени, основанная на Lucene, которая предоставляет распределённую полнотекстовую поисковую систему, использующую RESTful как API для индексирования и запроса индексов и данных с помощью простых операций Get, Post и других процессов.


Основные знания:

Tutorial по установке и развертыванию Centos 7 elasticsearch-6.5.2
https://www.itsvse.com/thread-6173-1-1.html
(Источник: Architect_Programmer)
Установите plugin elasticsearch-6.5.2 elasticsearch-head
https://www.itsvse.com/thread-6190-1-1.html
(Источник: Architect_Programmer)
Руководство по установке elasticsearch-analysis-ik в elasticsearch-6.5.2
https://www.itsvse.com/thread-6191-1-1.html
(Источник: Architect_Programmer)

Установка:

NEST можно установить с помощью nuget следующей командой:



Версия .NET требует как минимум 4.6, которая подробно описана следующим образом:Вход по гиперссылке виден.

Привет, мы отменили поддержку .NET 4.5 для .netstandard1.3, net46 — это новая базовая версия.

Мы сделали это, чтобы начать внедрять netcoreapp2.1 TFM и сосредоточиться на передаче всей работы по производительности клиенту.

Расскажите о вашей среде?

.NET 4.5 стартовала в 2012 году, а к 2014 году Microsoft поддерживала только версию 4.5.2. В какой-то момент нам нужно принять трудное решение отказаться от 4.5.2, чтобы сосредоточиться на текущих и новых версиях .NET. Точно так же, как мы сдались несколько лет назад. NET 3.5 — это непростая задача.


Создайте индекс:

Если индекс отсутствует, используйте следующий метод для создания отображения одновременно с созданием индекса

Отправьте запрос put на интерфейс, и данные json выглядят следующим образом:


Назад:

{
«Подтверждено»: верно,
"shards_acknowledged": верно,
"index": "test1"
}

Как показано ниже:



Добавить документацию:

На самом деле, чтобы добавить данные, эквивалентные строкам базы данных, я собрал около 163 новостей и успешно добавил в общей сложности 45 статей, как показано на рисунке ниже:



Посмотрите добавленные данные через плагин elasticsearch-head.



Вручную добавьте данные с html-кодом, разместите содержимое следующим образом:



Мы вставляем данные с HTML-тегами, чтобы проверить функцию выделения, определить, стоит ли избегать исходного html и js-кода, иначе это вызовет xss-атаки и т.д.

Искать:

Выполните поиск ключевых слов вроде «man» и «test» через программное обеспечение, и появятся правильные результаты поиска, а также отображается содержимое запроса поста, что удобно для нас для отладки, следующим образом:



Ищите тестовые ключевые слова и обнаруживайте, что html-код, содержащийся в записи, успешно спрятан!

Исходный код содержит файл новостей txt, Winform вызывает elasticsearch исходный код для скачивания:

Туристы, если вы хотите увидеть скрытое содержание этого поста, пожалуйстаОтвет





Предыдущий:Когда я впервые пришла на пандус, я поделилась со всеми уроком по дизайну одежды
Следующий:CodeIgniter — простой и быстрый PHP-фреймворк MVC
 Хозяин| Опубликовано 24.12.2018 11:03:23 |
Создайте индекс с помощью nest:
Модель:

Просмотрите картографию: http://ip:9200/test2/_mapping?pretty



Опубликовано 28.12.2021 10:10:50 |
Elasticsearch.Net.UnexpectedElasticsearchClientException: Не удаётся десериализировать текущий JSON-объект (например, {"name":"value"}) на ввод 'System. Int64', потому что тип требует правильной десериализации базовых значений JSON (например, строк, числа, булевых, нулевых). Чтобы исправить эту ошибку, вы можете изменить JSON на базовое значение JSON (например, строка, число, булевое, null) или изменить тип десериализации, чтобы сделать его нормальным. .NET-типы (например, не примитивные, такие как целые числа, не типы коллекций) (например, массивы или списки) могут быть десериализованы из JSON-объектов. Вы также можете добавить атрибут JsonObjectAttribute к типу, чтобы заставить его десериализироваться из JSON-объекта. Путь «hits.total.value», строка 1, позиция 113.


У меня была такая же проблема, и, похоже, библиотека NEST 6.6.0 несовместима с Elasticsearch 7.0. Мне пришлось обновить NEST до 7.0.0 (на этом этапе альфа).


Обновление NEST решает эту проблему
Опубликовано 22.07.2019 15:20:56 |
1121695511 Опубликовано 18.07.2019 10:27
Я брал плату как участник, но скачивание было ошибкой в предыдущей газете. Ай. Это также ошибка запроса

Чтобы исправить проблему, программа может запускаться, но это связано с другой версией по сравнению с elasticsearch download
Опубликовано 21.12.2018 8:45:31 |
Неплохо~ Для меня полнотекстовый поиск — это проблема.
Опубликовано 21.12.2018 12:09:32 |
Спасибо, что поделились, давайте посмотрим
Опубликовано 12.05.2019 17:22:14 |
Спасибо, арендодатель. Он хороший человек
Опубликовано 12.05.2019 17:35:00 |
Я не могу слезть. Эй. Очки. Пробки. Всякие желания
Опубликовано 28.05.2019 17:53:48 |
Спасибо, что поделились, что учитесь!
Опубликовано 18.06.2019 18:12:40 |
К счастью, вы можете попробовать.
Опубликовано 19.06.2019 17:28:18 |
У хорошего человека есть безопасная жизнь
Опубликовано 19.06.2019 18:07:29 |
Спасибо, что поделились, давайте посмотрим
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com