Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 197688|Antwort: 35

[Quelle] [Tatsächlicher Kampf]. net/c# Ruf die Elasticsearch-Suche über NEST [mit Quellcode] auf

[Link kopieren]
Veröffentlicht am 20.12.2018 17:32:53 | | | |
ElasticSearch:

ES ist eine nahezu Echtzeit-Suchplattform auf Basis von Lucene, die eine verteilte Volltextsuchmaschine bereitstellt, die RESTful als API-Schnittstelle nutzt, um Indizes und Daten durch einfache Get-, Post- und andere Operationen zu indexieren und abzufragen.


Grundlegendes Wissen:

Centos 7 Installation und Bereitstellung elasticsearch-6.5.2 Tutorial
https://www.itsvse.com/thread-6173-1-1.html
(Quelle: Architect_Programmer)
Installieren Sie das elasticsearch-6.5.2 elasticsearch-head-Plugin
https://www.itsvse.com/thread-6190-1-1.html
(Quelle: Architect_Programmer)
Tutorial zur Installation von elasticsearch-analysis-ik in elasticsearch-6.5.2
https://www.itsvse.com/thread-6191-1-1.html
(Quelle: Architect_Programmer)

Installation:

NEST kann mit nuget mit folgendem Befehl installiert werden:



Die .NET-Version benötigt mindestens 4.6, die wie folgt detailliert ist:Der Hyperlink-Login ist sichtbar.

Hallo, wir haben die .NET 4.5-Unterstützung für .netstandard1.3 gestrichen, net46 ist die neue Basis.

Wir haben das gemacht, damit wir netcoreapp2.1 TFM einführen und uns darauf konzentrieren können, alle Performance-Arbeiten zum Kunden zu bringen.

Können Sie uns etwas über Ihre Umgebung erzählen?

.NET 4.5 startete 2012 und bis 2014 wurde nur noch 4.5.2 von Microsoft unterstützt. Irgendwann müssen wir die schwierige Entscheidung treffen, 4.5.2 aufzugeben, um uns mehr auf die aktuellen und neueren .NET-Versionen konzentrieren zu können. So wie wir vor ein paar Jahren aufgegeben haben. NET 3.5, das ist keine leichte Aufgabe.


Erstellen Sie einen Index:

Wenn der Index nicht existiert, verwenden Sie die folgende Methode, um gleichzeitig mit der Erstellung des Index eine Abbildung zu erstellen

Senden Sie eine Put-Anfrage an die Schnittstelle, und die JSON-Daten sind wie folgt:


Zurück:

{
"Anerkannt": Wahr,
"shards_acknowledged": wahr,
"index": "test1"
}

Wie unten gezeigt:



Dokumentation hinzufügen:

Tatsächlich habe ich etwa 163 Nachrichten gesammelt und insgesamt 45 Artikel hinzugefügt, wie in der untenstehenden Abbildung gezeigt:



Schau dir die hinzugefügten Daten über das elasticsearch-head-Plugin an.



Fügen Sie ein Datenstück manuell mit HTML-Code hinzu und fügen Sie den Inhalt wie folgt ein:



Wir fügen ein Datenstück mit HTML-Tags ein, um die Hervorhebungsfunktion zu testen, ob wir den ursprünglichen HTML- und JS-Code entkommen sollen, sonst führt das zu xss-Angriffen usw.

Suchen:

Suchen Sie in der Software nach Schlüsselwörtern wie "man" und "test", erscheinen die korrekten Suchergebnisse, und der Inhalt des Beitrags wird angezeigt, was für uns praktisch zum Debuggen ist, wie folgt:



Suchen Sie nach Test-Keywords und stellen Sie fest, dass der im Datensatz enthaltene HTML-Code erfolgreich entkommen ist!

Der Quellcode enthält die Nachrichten-txt-Datei, Winform ruft den Elasticsearch-Quellcode zum Download auf:

Touristen, wenn ihr den versteckten Inhalt dieses Beitrags sehen wollt, bitteAntwort





Vorhergehend:Als ich zum ersten Mal zur Rampe kam, habe ich das Modedesign-Tutorial mit allen geteilt
Nächster:CodeIgniter, ein einfaches und schnelles PHP MVC-Framework
 Vermieter| Veröffentlicht am 24.12.2018 11:03:23 |
Indexcode mit Nest erstellen:
Modell:

Sehen Sie sich die Kartenkartierung an: http://ip:9200/test2/_mapping?pretty



Veröffentlicht am 28.12.2021 10:10:50 |
Elasticsearch.Net.UnexpectedElasticsearchClientException: Kann das aktuelle JSON-Objekt (z. B. {"name":"value"}) nicht deserialisieren, um 'System. Int64', weil der Typ erfordert, dass JSON-Basiswerte (z. B. Strings, Zahlen, Booleans, Nullen) korrekt deserialisiert werden. Um diesen Fehler zu beheben, können Sie das JSON in einen JSON-Basiswert ändern (z. B. Zeichenkette, Zahl, Boolesch, Null) oder den Deserialisierungstyp ändern, um ihn normal zu machen. .NET-Typen (z. B. keine primitiven Typen wie Ganzzahlen, keine Sammlungstypen) (z. B. Arrays oder Listen) können aus JSON-Objekten deserialisiert werden. Man kann dem Typ auch ein JsonObjectAttribut hinzufügen, um zu erzwingen, dass es von einem JSON-Objekt aus deserialisiert wird. Pfad "hits.total.value", Zeile 1, Position 113.


Ich hatte dasselbe Problem, und es scheint, dass die NEST 6.6.0-Bibliothek nicht mit Elasticsearch 7.0 kompatibel ist. Ich musste NEST auf 7.0.0 aktualisieren (zu diesem Zeitpunkt Alpha).


Das Upgrade von NEST löst dieses Problem
Veröffentlicht am 22.07.2019 15:20:56 |
1121695511 Veröffentlicht am 18.7.2019, 10:27 Uhr
Ich habe als Mitglied Geld berechnet, aber das Herunterladen war immer noch derselbe Fehler wie bei der vorherigen Zeitung. Autsch. Es ist auch ein Abfragefehler

Um das zu korrigieren, kann das Programm ausgeführt werden, aber es wird durch eine andere Version als der Elasticsearch-Download verursacht
Veröffentlicht am 21.12.2018 08:45:31 |
Nicht schlecht~ Für mich ist die Volltextsuche ein Problem
Veröffentlicht am 21.12.2018 12:09:32 |
Danke fürs Teilen, lass uns einen Blick werfen
Veröffentlicht am 12.05.2019 17:22:14 |
Danke, Vermieter. Er ist ein guter Mensch
Veröffentlicht am 12.05.2019 17:35:00 |
Ich komme nicht runter. Hallöchen. Punkte. Verkehr. Alle möglichen Wünsche
Veröffentlicht am 28.05.2019 17:53:48 |
Danke fürs Teilen, ich lerne!
Veröffentlicht am 18.06.2019 18:12:40 |
Zum Glück kannst du es ausprobieren.
Veröffentlicht am 19.06.2019 17:28:18 |
Ein guter Mensch hat ein sicheres Leben
Veröffentlicht am 19.06.2019 18:07:29 |
Danke fürs Teilen, lass uns einen Blick werfen
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com