Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 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)
Инсталирайте 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 кодът, съдържащ се в записа, е успешно изчистен!

Изходният код съдържа news 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 (например низ, число, булев, нулев) или да промените типа на десериализация, за да стане нормален. .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 Публикувано на 2019-7-18 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