Crea indice di ricerca .NET con GroupDocs.Redaction: indicizzazione e gestione degli alias per una gestione sicura dei documenti
Gestire grandi volumi di documenti mantenendo le informazioni sensibili riservate può essere una sfida. Con GroupDocs.Redaction per .NET è possibile creare progetti di indice di ricerca .NET che redigono e cercano all’interno delle collezioni di documenti in modo efficiente. Questo tutorial ti guida nella creazione o apertura di un indice usando Aspose.Search.NET, nell’aggiunta di documenti all’indice, nella gestione dei dizionari di alias e nell’integrazione delle capacità di redazione — il tutto mantenendo una rigorosa sicurezza dei dati.
Risposte rapide
- Qual è lo scopo principale di questa guida? Mostrare come creare progetti di indice di ricerca .NET, aggiungere documenti all’indice e gestire gli alias con GroupDocs.Redaction.
- Quali librerie sono necessarie? GroupDocs.Redaction e Aspose.Search.NET, entrambe disponibili su NuGet.
- Ho bisogno di una licenza? Una versione di prova gratuita è sufficiente per la valutazione; è necessaria una licenza completa per la produzione.
- Posso gestire grandi insiemi di documenti? Sì — entrambe le librerie supportano l’elaborazione di file di centinaia di pagine senza caricare l’intero file in memoria.
- La soluzione è compatibile con .NET‑Core? Assolutamente; funziona su .NET 5, .NET 6 e versioni successive.
Introduzione
Prima di approfondire, chiarifichiamo perché una soluzione creare indice di ricerca .NET è importante. Un indice ti consente di individuare frasi esatte, pattern o contenuti redatti tra migliaia di file in pochi millisecondi, accelerando notevolmente le revisioni di conformità, la scoperta legale e gli audit interni. Accoppiando il potente motore di indicizzazione di Aspose.Search.NET con gli strumenti di redazione robusti di GroupDocs.Redaction, ottieni una pipeline unica che protegge e trova i dati istantaneamente.
Cos’è GroupDocs.Redaction per .NET?
GroupDocs.Redaction per .NET è una libreria che consente la redazione programmatica di testo, immagini e metadati su più di 30 formati di documento, inclusi PDF, DOCX, PPTX e HTML. Elabora file fino a 2 GB senza caricare l’intero documento in RAM, garantendo operazioni ad alte prestazioni su carichi di lavoro aziendali.
Perché creare un indice di ricerca .NET con Aspose.Search.NET?
Aspose.Search.NET può indicizzare oltre 50 tipi di file e supporta aggiornamenti incrementali, il che significa che puoi aggiungere nuovi file a un indice esistente senza ricostruirlo da zero. Questo riduce l’uso della CPU fino al 70 % rispetto a una re‑indicizzazione completa, e i tempi di risposta delle query rimangono inferiori a 200 ms per indici contenenti più di 500 k documenti.
Prerequisiti
Librerie richieste, versioni e dipendenze
- GroupDocs.Redaction – ultima versione su NuGet, compatibile con .NET 5/6/7.
- Aspose.Search.NET – ultima versione su NuGet, supporta .NET Standard 2.0+ e .NET Core.
Entrambe le librerie devono puntare alla stessa versione del runtime .NET per evitare conflitti di binding.
Requisiti di configurazione dell’ambiente
- Visual Studio 2022 (o qualsiasi IDE che supporti .NET 6+).
- Accesso a una cartella contenente i documenti che desideri indicizzare e redigere.
Prerequisiti di conoscenza
- Familiarità con la sintassi C# e le strutture di progetto .NET.
- Concetti di base di indicizzazione, ricerca e redazione dei documenti.
Come creare un indice di ricerca .NET?
Carica o istanzia un oggetto Index, puntalo a una cartella e chiama CreateOrOpen — quel singolo passaggio crea o riapre il deposito ricercabile su disco. L’operazione viene eseguita in un thread in background per impostazione predefinita, così l’interfaccia utente rimane reattiva anche durante l’indicizzazione di migliaia di file.
Index rappresenta la collezione ricercabile memorizzata su disco.
Definizione dell’ancora
La classe Index è il componente centrale di Aspose.Search.NET che rappresenta una collezione ricercabile di documenti su disco. Tutte le operazioni di indicizzazione e query passano attraverso questo oggetto.
dotnet add package GroupDocs.Redaction
Come aggiungere documenti all’indice?
AddDocument aggiunge un file all’indice ed estrae il suo contenuto ricercabile.
Aggiungi documenti chiamando Index.AddDocument per ogni percorso file; il metodo estrae testo, metadati e contenuto OCR opzionale automaticamente. Puoi aggiungere file in batch all’interno di un ciclo foreach, e l’indice verrà aggiornato in modo incrementale senza ricostruire le voci esistenti. Il processo restituisce anche un oggetto di stato che indica il successo o eventuali errori, consentendoti di gestire i fallimenti programmaticamente.
Install-Package GroupDocs.Redaction
Passaggi per l’acquisizione della licenza
- Prova gratuita – Esplora tutte le funzionalità senza costi per 30 giorni.
- Licenza temporanea – Usa una chiave a tempo limitato per test più estesi.
- Licenza completa – Necessaria per le distribuzioni in produzione e rimuove tutte le limitazioni di valutazione.
Una volta installata, inizializza GroupDocs.Redaction come mostrato di seguito:
using GroupDocs.Redaction;
RedactorSettings settings = new RedactorSettings();
// Set up additional configuration as needed
Guida all’implementazione
Divideremo l’implementazione in sezioni gestibili basate sulle funzionalità.
Creazione o apertura di un indice
Panoramica
Creare o aprire un indice di ricerca è fondamentale per una gestione efficiente dei documenti e per la ricerca. Questo ti permette di lavorare con dati indicizzati rapidamente.
Istruzioni passo‑passo
1. Crea/apri indice
using GroupDocs.Search;
// Specify the directory where your index will be stored
string indexPath = "YOUR_INDEX_DIRECTORY";
// Initialize or open an existing index
Index index = new Index(indexPath);
// Explanation: The Index object is initialized with a directory path,
// which serves as a storage location for all indexed data.
2. Aggiungi documenti all’indice
using GroupDocs.Search;
// Specify your document directory
string docPath = "YOUR_DOCUMENT_DIRECTORY";
// Add documents from the specified directory to the index
index.Add(docPath);
// Explanation: The Add method indexes all documents within the provided path,
// making them searchable.
Gestione del dizionario degli alias
Panoramica
Gli alias in un dizionario ti consentono di definire termini abbreviati per query di ricerca complesse, migliorando l’efficienza e la leggibilità delle ricerche.
Istruzioni passo‑passo
1. Cancella gli alias esistenti
using GroupDocs.Search.Dictionaries;
// Check if there are existing aliases and clear them
if (index.Dictionaries.AliasDictionary.Count > 0)
{
index.Dictionaries.AliasDictionary.Clear();
}
// Explanation: This ensures you start with a clean slate when managing aliases.
2. Aggiungi singole voci di alias
index.Dictionaries.AliasDictionary.Add("t", "(gravida OR promotion)");
index.Dictionaries.AliasDictionary.Add("e", "(viverra OR farther)");
// Explanation: Each alias is mapped to an expression that defines its search scope.
3. Aggiungi più alias usando un array
AliasReplacementPair[] pairs = new AliasReplacementPair[]
{
new AliasReplacementPair("d", "daterange(2017-01-01 ~~ 2019-12-31)"),
new AliasReplacementPair("n", "(400 ~~ 4000)")
};
index.Dictionaries.AliasDictionary.AddRange(pairs);
// Explanation: AddRange allows bulk addition of aliases, streamlining the setup process.
Recupero ed esportazione degli alias
Panoramica
Esportare il tuo dizionario di alias in un file ti permette di condividere i vocabolari di ricerca tra team o ambienti, mentre il recupero di voci specifiche ti aiuta a convalidare la logica delle query.
Recupera alias
if (index.Dictionaries.AliasDictionary.Contains("e"))
{
string replacement = index.Dictionaries.AliasDictionary.GetText("e");
}
// Explanation: Use Contains to check existence before retrieval.
Esporta alias
string exportPath = "YOUR_OUTPUT_DIRECTORY/Aliases.dat";
index.Dictionaries.AliasDictionary.ExportDictionary(exportPath);
// Explanation: ExportDictionary saves the alias dictionary for future use or sharing.
Importazione degli alias e ricerca con il dizionario degli alias
Panoramica
Importa gli alias da un file per semplificare le operazioni di ricerca usando termini abbreviati predefiniti, quindi esegui query che fanno riferimento a quegli alias.
1. Importa alias
string importPath = "YOUR_OUTPUT_DIRECTORY/Aliases.dat";
index.Dictionaries.AliasDictionary.ImportDictionary(importPath);
// Explanation: This method loads existing alias definitions into the dictionary.
2. Ricerca usando gli alias
string query = "@t OR @e"; // Use aliases in your search query
SearchResult result = index.Search(query);
// Explanation: Leverage aliases to perform complex searches with simple queries.
Problemi comuni e soluzioni
- Errori nel percorso dell’indice – Assicurati che il percorso della cartella sia assoluto e che l’applicazione abbia i permessi di lettura/scrittura.
- Perdite di memoria – Chiama sempre
Dispose()sugli oggettiIndexdopo l’uso, specialmente nei servizi a lungo termine. - Alias non riconosciuto – Verifica che il file di alias utilizzi la codifica UTF‑8 e che ogni riga segua il formato
key=value.
Domande frequenti
Q: Posso usare questa soluzione con .NET Core?
A: Sì, sia GroupDocs.Redaction sia Aspose.Search.NET supportano pienamente .NET Core 3.1, .NET 5, .NET 6 e versioni successive.
Q: Quanti documenti può gestire l’indice?
A: Il motore è stato testato con indici contenenti oltre 1 milione di documenti, mantenendo tempi di risposta inferiori a un secondo su hardware server standard.
Q: Gli alias supportano le espressioni regolari?
A: Gli alias possono contenere caratteri jolly (* e ?) ma non pattern regex completi; per pattern complessi, costruisci la query programmaticamente.
Q: È possibile redigere dopo la ricerca?
A: Assolutamente. Recupera l’ID del documento dal risultato della ricerca, caricalo con GroupDocs.Redaction, applica le regole di redazione e salva la versione protetta.
Q: Quale modello di licenza si applica alle grandi imprese?
A: GroupDocs offre licenze basate sul volume con sviluppatori e siti di distribuzione illimitati; contatta le vendite per un preventivo personalizzato.
Conclusione
Padroneggiando l’integrazione di GroupDocs.Redaction con Aspose.Search.NET per creare soluzioni di indice di ricerca .NET, puoi migliorare drasticamente la sicurezza dei documenti, la conformità e la reperibilità. Ora disponi degli strumenti per costruire un indice, aggiungere documenti all’indice, gestire dizionari di alias e applicare regole di redazione — tutto all’interno di un’unica applicazione .NET ad alte prestazioni.
Passi successivi? Implementa gli snippet di codice in un progetto di test, sperimenta con pattern di alias personalizzati e misura la velocità di indicizzazione rispetto al tuo set di dati di produzione.
Last Updated: 2026-07-02
Tested With: GroupDocs.Redaction 23.10 for .NET, Aspose.Search.NET 24.5
Author: GroupDocs