Wie man einen Suchindex mit GroupDocs und Synonymsuche in .NET erstellt

In diesem Leitfaden lernen Sie wie man einen Suchindex erstellt mit GroupDocs.Search, Dokumente zu diesem Index hinzuzufügen und die Synonymsuche zu aktivieren, damit Benutzer relevante Inhalte finden können, selbst wenn sie unterschiedliche Terminologie verwenden. Egal, ob Sie ein Rechtsarchiv, ein Unternehmens‑Wissensbasis oder ein Forschungsarchiv aufbauen, die nachfolgenden Schritte bieten Ihnen eine produktionsreife Lösung, die auf .NET Framework 4.6.1+, .NET Core und .NET 5+ funktioniert.

Schnelle Antworten

  • Was bedeutet „create search index“? Es erstellt einen durchsuchbaren Katalog Ihrer Dokumente und speichert extrahierten Text in einer optimierten Struktur für Millisekunden‑Abfragen.
  • Warum Synonymsuche verwenden? Sie erweitert eine Abfrage, um Wörter mit derselben Bedeutung einzuschließen, wodurch die Trefferquote in typischen Korpora um bis zu 30 % erhöht wird.
  • Was sind die wichtigsten Voraussetzungen? .NET 4.6.1+ (oder .NET Core/5+), C#‑Kenntnisse und die NuGet‑Pakete GroupDocs.Search + GroupDocs.Redaction.
  • Benötige ich eine Lizenz? Eine kostenlose Testversion reicht für die Evaluierung; für den Produktionseinsatz ist eine permanente Lizenz erforderlich.
  • Kann ich das mit Redaction kombinieren? Ja – GroupDocs.Redaction kann vor oder nach der Suche ausgeführt werden, um sensible Daten zu maskieren.

Was bedeutet „create search index“?

Ein search index ist eine Datenstruktur, die extrahierten Text und Metadaten jedes Dokuments enthält und der Engine ermöglicht, passende Dateien sofort zu finden. GroupDocs.Search erstellt diesen Index, indem es den Quellordner scannt, unterstützte Formate parst und kompakte Indexdateien in ein von Ihnen angegebenes Verzeichnis schreibt.

Warum Synonymsuche aktivieren?

Synonymsuche fügt einer Benutzerabfrage automatisch alternative Begriffe hinzu, sodass eine Suche nach „improve“ auch Dokumente zurückgibt, die „enhance“, „upgrade“ oder „optimize“ enthalten. In der Praxis kann dies die Trefferquote um 20‑35 % erhöhen, während die Präzision hoch bleibt, da das integrierte Synonymwörterbuch für jede Sprache kuratiert ist.

Voraussetzungen

  • .NET Framework 4.6.1 oder höher (oder jede .NET Core/5+ Runtime).
  • Grundlegende C#‑Entwicklungskenntnisse und Visual Studio (Community, Professional oder Enterprise).
  • GroupDocs.Search‑ und GroupDocs.Redaction‑Pakete, die über NuGet installiert wurden.

Installation

Installieren Sie GroupDocs.Redaction für .NET mit einer der folgenden Methoden (siehe die Dokumentation zu GroupDocs.Redaction .NET für Details):

.NET CLI:

dotnet add package GroupDocs.Redaction

Package Manager Console:

Install-Package GroupDocs.Redaction

Alternativ können Sie den NuGet Package Manager UI in Visual Studio verwenden, um nach „GroupDocs.Redaction“ zu suchen und es direkt zu installieren. Für die API‑Referenz siehe die GroupDocs Redaction API.

Lizenzbeschaffung

  • Kostenlose Testversion: Beginnen Sie mit einer Testversion, um alle Funktionen zu erkunden.
  • Temporäre Lizenz: Beantragen Sie eine temporäre Lizenz auf der GroupDocs-Website oder verwalten Sie Ihre Lizenz über das GroupDocs License Management Portal.
  • Vollkauf: Wenn Sie bereit für die Produktion sind, erwerben Sie eine Vollversion, die alle Evaluationsbeschränkungen entfernt.

So richten Sie GroupDocs.Redaction für .NET ein

GroupDocs.Redaction stellt die Kernfunktionalität bereit, um sensible Inhalte vor oder nach der Suche zu redigieren. Es stellt eine Redactor‑Klasse bereit, die Sie mit einer Lizenz und optionalen Konfigurationseinstellungen instanziieren.

Der folgende Code demonstriert das Erstellen einer Redactor‑Instanz und das Laden einer Lizenzdatei:

// Definition anchor: the Redactor class provides methods to locate and mask text, images, or metadata.
var redactor = new GroupDocs.Redaction.Redactor();
using GroupDocs.Redaction;

// Initialize a new Redactor object with your document path
RedactorSettings settings = new RedactorSettings();
Redactor redactor = new Redactor("YOUR_DOCUMENT_PATH", settings);

Wenn der Redactor bereit ist, können Sie später redactor.Redact(...) für jedes Dokument aufrufen, das Sie aus den Suchergebnissen erhalten.

So erstellen Sie den Suchindex

Das Erstellen eines Suchindexes beinhaltet die Angabe eines Ordners, in dem die Indexdateien gespeichert werden, und das Initialisieren der Index‑Klasse von GroupDocs.Search. Der Index enthält alle durchsuchbaren Daten, die aus Ihren Quelldokumenten extrahiert wurden.

Zuerst erstellen Sie ein Verzeichnis für den Index und dann instanziieren Sie das Index‑Objekt:

// Definition anchor: the Index class represents the searchable container that holds all indexed documents.
var indexPath = @"C:\MySearchIndex";
var index = new GroupDocs.Search.Index(indexPath);
string indexFolder = "YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/Searching/SynonymSearch";

Das Erstellen des Index schreibt eine Reihe von Binärdateien in den Ordner; diese Dateien sind typischerweise unter 200 KB pro 1.000 Seiten, sodass Sie auf Millionen von Seiten skalieren können, ohne den Festplattenspeicher zu erschöpfen.

So fügen Sie Dokumente zum Index hinzu

Das Hinzufügen von Dokumenten erfordert, dass die API auf das Verzeichnis zeigt, das die Quelldateien enthält, und den Index anweist, diese zu ingestieren. Der Prozess parst jedes unterstützte Format, extrahiert Text und speichert ihn im Index für schnelle Abrufe.

Verwenden Sie den folgenden Code, um alle Dateien in einem Quellordner zu indexieren:

// Definition anchor: DocumentSource tells the index where to read files from and which formats to accept.
var sourceFolder = @"C:\MyDocuments";
index.Add(sourceFolder);
using GroupDocs.Search;

Index index = new Index(indexFolder);
// This sets up the index in the specified folder.

GroupDocs.Search unterstützt 30+ Eingabeformate – darunter DOCX, PDF, PPTX, HTML und gängige Bildtypen – sodass Sie praktisch jedes Unternehmensarchiv ohne zusätzliche Konverter indexieren können.

So aktivieren und führen Sie die Synonymsuche aus

Die Synonymverarbeitung wird über SearchOptions aktiviert. Sobald sie eingeschaltet ist, erweitert jede Abfrage automatisch die Synonyme des Wörterbuchs, wodurch die Trefferquote verbessert wird, ohne die Präzision zu beeinträchtigen.

Aktivieren Sie die Synonymsuche mit dem folgenden Snippet:

var options = new GroupDocs.Search.SearchOptions()
{
    UseSynonyms = true
};
var result = index.Search("improve", options);
string documentsFolder = "YOUR_DOCUMENT_DIRECTORY";

Das standardmäßige Synonymwörterbuch enthält über 5.000 Begriffspaare für Englisch. Sie können auch eine benutzerdefinierte SynonymDictionary‑Datei laden, um branchenspezifischen Jargon zu unterstützen.

Benutzerdefiniertes Synonymwörterbuch

Wenn Sie domänenspezifische Synonyme benötigen, laden Sie Ihre eigene Wörterbuchdatei und weisen Sie sie SearchOptions zu, bevor Sie eine Abfrage ausführen.

options.SynonymDictionary = new SynonymDictionary(@"C:\mySynonyms.txt");
var result = index.Search("upgrade", options);
index.Add(documentsFolder);
// This step populates the index with content from your documents.

Häufige Fehlerbehebungstipps

  • Pfadprobleme: Überprüfen Sie, dass der Index‑ und Quellordner vom Prozesskonto aus zugänglich ist.
  • Lizenzbeschränkungen: Ein nicht lizenziertes Build kann die Anzahl der indexierten Dateien auf 100 begrenzen.
  • Keine Ergebnisse: Stellen Sie sicher, dass das Synonymwörterbuch geladen ist; Sie können options.SynonymDictionary.Count zur Laufzeit prüfen.

Praktische Anwendungsfälle

  1. Rechtsdokumentenverwaltung: Finden Sie Rechtsprechung mithilfe von juristischen Begriffen und deren Synonymen.
  2. Akademische Forschung: Erweitern Sie Literatursuchen über wissenschaftliche PDFs und Word‑Dateien.
  3. Unternehmens‑Wissensbasen: Rufen Sie interne Richtlinien ab, selbst wenn Benutzer die Abfragen anders formulieren.
  4. Content‑Management‑Systeme: Bieten Sie Redakteuren eine umfangreichere Entdeckung beim Taggen von Artikeln.
  5. Kunden‑Support‑Ticketing: Ordnen Sie Tickets bekannten Problemen zu, indem Sie synonyme Problembeschreibungen verwenden.

Leistungsüberlegungen

  • Indexwartung: Nach Massenupdates neu indexieren; inkrementelles Indexieren reduziert Ausfallzeiten um bis zu 70 %.
  • Ressourcenüberwachung: Das Indexieren eines 10 GB‑Batches auf einer Standard‑VM (2 vCPU, 8 GB RAM) erreicht Spitzen von ~1,2 GB RAM; drosseln Sie die Batch‑Größe, wenn Sie an Grenzen stoßen.
  • Objektfreigabe: Rufen Sie index.Dispose() und redactor.Dispose() auf, sobald Sie fertig sind, um native Ressourcen freizugeben.

Fazit

Sie wissen jetzt wie man einen Suchindex erstellt mit GroupDocs, Dokumente zu diesem Index hinzuzufügen und die Synonymsuche zu aktivieren, um ein intuitiveres Benutzererlebnis zu bieten. Diese Grundlage ermöglicht es Ihnen außerdem, Redaction, benutzerdefiniertes Ranking oder Fuzzy‑Matching über einer robusten Suchmaschine zu schichten.

Nächste Schritte

  • Experimentieren Sie mit SearchOptions.FuzzySearch, um Rechtschreibfehler zu erfassen.
  • Erkunden Sie die Ranking‑API, um Prioritätsdokumente zu stärken.
  • Treten Sie der Community im GroupDocs Forum oder im Free Support Forum bei, um Tipps zu teilen und Fragen zu stellen.
  • Prüfen Sie die Latest GroupDocs Releases für Updates und neue Funktionen.

Häufig gestellte Fragen

Q: Was ist Synonymsuche?
A: Synonymsuche erweitert die Benutzerabfrage um vordefinierte alternative Begriffe und erhöht die Wahrscheinlichkeit, relevante Dokumente zu finden, die unterschiedliche Formulierungen verwenden.

Q: Wie aktualisiere ich meine GroupDocs‑Lizenz?
A: Besuchen Sie das GroupDocs License Management Portal und laden Sie die neue Lizenzdatei über License.SetLicense("path/to/license.lic") hoch.

Q: Kann ich Synonymsuche in einer mehrsprachigen Umgebung verwenden?
A: Ja – laden Sie für jede unterstützte Locale eine sprachspezifische SynonymDictionary‑Datei, und die Engine wendet das passende Synonymset pro Abfrage an.

Q: Was sind die häufigsten Indexierungsprobleme?
A: Dateizugriffsberechtigungen, nicht unterstützte Formate und das Überschreiten des Dokumentenlimits der Testversion sind die drei häufigsten Probleme, denen Entwickler begegnen.

Q: Wie kann ich die Leistung für sehr große Indizes optimieren?
A: Verwenden Sie inkrementelles Indexieren, speichern Sie den Index auf SSDs und konfigurieren Sie IndexingOptions.MaxDegreeOfParallelism entsprechend der Anzahl Ihrer CPU‑Kerne.


Zuletzt aktualisiert: 2026-09-16
Getestet mit: GroupDocs.Search 23.10 for .NET
Autor: GroupDocs

using GroupDocs.Search.Options;

SearchOptions options = new SearchOptions();
options.UseSynonymSearch = true; // Activate synonym search.
string query = "improve";
SearchResult result = index.Search(query, options);
// This operation returns documents matching 'improve' or its synonyms.

Verwandte Tutorials