Opanowanie Redagowania Dokumentów i Zarządzania Indeksem Wyszukiwania w .NET z GroupDocs

Wprowadzenie

Jeśli potrzebujesz jak redagować dokumenty jednocześnie zachowując ich możliwość wyszukiwania, trafiłeś we właściwe miejsce. Ten samouczek przeprowadzi Cię przez łączenie GroupDocs.Redaction i GroupDocs.Search, aby bezpiecznie ukrywać wrażliwe dane, a następnie dodawać dokumenty do indeksu w celu szybkiego odzyskiwania. Po zakończeniu zrozumiesz, jak optymalizować wydajność wyszukiwania, redagować pliki PDF w C# i zbudować solidny potok indeksowania, który skaluje się wraz z Twoimi danymi.

Szybkie Odpowiedzi

  • Jak mogę zredagować PDF w C#? Użyj RedactionEngine, aby załadować plik, zdefiniować obszary redakcji i wywołać Save.
  • Która klasa tworzy indeks wyszukiwania? Klasa Index z GroupDocs.Search zarządza wszystkimi operacjami indeksowania.
  • Czy mogę dodać nowe pliki bez przebudowywania całego indeksu? Tak — wywołaj Index.AddDocument dla aktualizacji przyrostowych.
  • Czy redakcja wpływa na wyniki wyszukiwania? Zredagowana treść jest wykluczona z indeksu, co utrzymuje wyniki wyszukiwania czyste.
  • Które wersje .NET są obsługiwane? .NET Framework 4.6.1+, .NET Core 3.1+ oraz .NET 5/6.

Co to jest „jak redagować dokumenty”?

„Jak redagować dokumenty” odnosi się do procesu programowego usuwania lub maskowania poufnych informacji z plików, tak aby ukryte dane nie mogły zostać odzyskane ani wyświetlone. Redakcja jest niezbędna dla zgodności, prywatności i procesów prawnych, w których należy zapobiec ujawnieniu danych.

Dlaczego warto używać GroupDocs do redakcji i wyszukiwania?

GroupDocs obsługuje ponad 50 formatów plików (w tym PDF, DOCX, PPTX i typy obrazów) i może przetwarzać dokumenty o setkach stron bez ładowania całego pliku do pamięci, osiągając do 30 % szybsze indeksowanie w porównaniu z ogólnymi bibliotekami. Połączony zestaw Redaction + Search pozwala redagować pliki PDF w C# i od razu indeksować czystą wersję, eliminując potrzebę oddzielnego kroku wstępnego przetwarzania.

Wymagania wstępne

  • GroupDocs.Search dla .NET (v20.11 lub nowszy)
  • GroupDocs.Redaction dla .NET (v20.10 lub nowszy)
  • Visual Studio 2017 lub nowszy
  • .NET Framework 4.6.1 lub nowszy (lub .NET Core 3.1+)

Wymagania wiedzy

Powinieneś być zaznajomiony z podstawową składnią C#, odwołaniami do projektów oraz operacjami na systemie plików.

Konfigurowanie GroupDocs.Redaction dla .NET

Instalacja bibliotek

.NET CLI
dotnet add package to polecenie .NET CLI, które instaluję pakiet NuGet w Twoim projekcie.

dotnet add package GroupDocs.Redaction

Package Manager
Install-Package to polecenie PowerShell używane w konsoli NuGet Package Manager do dodawania bibliotek.

Install-Package GroupDocs.Redaction

NuGet Package Manager UI
Wyszukaj „GroupDocs.Redaction” i kliknij Install, aby pobrać najnowszą stabilną wersję.

Pozyskiwanie licencji

  • Free Trial – pełna wersja próbna na 30 dni.
  • Temporary License – 15‑dniowy przedłużony dostęp do oceny.
  • Purchase – stała licencja produkcyjna.

Podstawowa inicjalizacja

RedactionEngine to podstawowa klasa używana do ładowania, modyfikacji i zapisywania dokumentów po redakcji.

using GroupDocs.Redaction;

RedactorSettings settings = new RedactorSettings();
// Further configuration and initialization...

Przewodnik implementacji

Podzielmy rozwiązanie na trzy logiczne części: tworzenie indeksu, dodawanie dokumentów (w tym zredagowanych) oraz przeszukiwanie indeksu.

Jak utworzyć indeks wyszukiwania przy użyciu GroupDocs.Search?

Index to główna klasa reprezentująca indeks przeszukiwalny w GroupDocs.Search. Ładujesz lub tworzysz instancję Index, wskazując folder na dysku; biblioteka zarządza wszystkimi wewnętrznymi plikami za Ciebie. Ten krok jest podstawą optymalizacji wydajności wyszukiwania, ponieważ dobrze ustrukturyzowany indeks zmniejsza opóźnienie zapytań.

using GroupDocs.Search;

string indexFolder = "YOUR_DOCUMENT_DIRECTORY/HelloWorldIndex";

Wyjaśnienie: Kod definiuje katalog, w którym będą przechowywane pliki indeksu. Użycie dedykowanego folderu utrzymuje dane indeksu odseparowane od Twoich dokumentów źródłowych.

Index index = new Index(indexFolder);

Wyjaśnienie: Tworzenie instancji Index otwiera istniejący indeks lub tworzy nowy, jeśli ścieżka jest pusta.

Jak dodać dokumenty do indeksu po redakcji?

Najpierw zredaguj wszystkie poufne sekcje, a następnie wprowadź czysty plik do indeksu. Ten dwustopniowy przepływ zapewnia, że tylko bezpieczna treść jest przeszukiwalna.

Zdefiniuj folder źródłowy

documentsFolder to ścieżka, w której znajdują się Twoje oryginalne pliki PDF.

string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/HelloWorldDocuments";

AddDocument to metoda klasy Index, która dodaje pojedynczy dokument do indeksu.

index.Add(documentsFolder);

Jak przeszukiwać utworzony indeks?

Określ ciąg zapytania, uruchom wyszukiwanie i iteruj wyniki. API zwraca numery stron, fragmenty i identyfikatory dokumentów, co ułatwia prezentację wyników w interfejsie użytkownika.

SearchResult przechowuje wyniki zwrócone przez zapytanie, w tym dopasowane dokumenty i fragmenty.

string query = "Lorem";
SearchResult result = index.Search(query);

Praktyczne zastosowania

Te możliwości rozwiązują problemy w rzeczywistym świecie:

  1. Zarządzanie dokumentami prawnymi – Redaguj nazwiska klientów przed indeksowaniem akt spraw, zapewniając prywatność, a jednocześnie umożliwiając prawnikom wyszukiwanie orzecznictwa.
  2. Rekordy medyczne – Usuń identyfikatory pacjentów z medycznych plików PDF, a następnie indeksuj oczyszczone wersje w celu szybkich zapytań audytowych.
  3. Zgodność korporacyjna – Automatyzuj redakcję sprawozdań finansowych i natychmiast udostępnij czyste wersje do wyszukiwania w wewnętrznych dochodzeniach.

Rozważania dotyczące wydajności

Aby optymalizować wydajność wyszukiwania przy obsłudze dużych wolumenów:

  • Uruchamiaj indeksowanie jako zadanie w tle i zatwierdzaj zmiany partiami.
  • Szybko zwalniaj obiekty Index, aby zwolnić zasoby niezarządzane.
  • Monitoruj zużycie pamięci; GroupDocs.Search strumieniuje dane i nigdy nie ładuje całego dokumentu do RAM.
  • Planuj okresowe scalanie indeksów, aby utrzymać indeks zwarty i szybki w zapytaniach.

Typowe problemy i rozwiązania

ProblemRozwiązanie
Błędy braku pamięci przy dużych plikach PDFUżyj RedactionEngine z RedactionOptions, które włączają tryb strumieniowy.
Wyszukiwanie zwraca zredagowane terminyUpewnij się, że wykonujesz redakcję przed wywołaniem Index.AddDocument.
Nieobsługiwany format plikuSprawdź, czy rozszerzenie pliku znajduje się wśród ponad 50 obsługiwanych formatów; najpierw skonwertuj nieobsługiwane pliki do PDF.
Licencja nie rozpoznanaUmieść plik licencji w katalogu głównym aplikacji i wywołaj License.SetLicense("license.json") przed użyciem jakiejkolwiek API.

Najczęściej zadawane pytania

Q: Czy mogę bezpośrednio redagować pliki PDF w C# bez ich konwertowania?
A: Tak — RedactionEngine działa natywnie na strumieniach PDF, więc możesz załadować PDF, zastosować obiekty redakcji i zapisać wynik bez konwersji formatu.

Q: Jak dodawanie dokumentów do indeksu wpływa na szybkość wyszukiwania?
A: Indeksowanie przyrostowe dodaje tylko nowe pliki, utrzymując rozmiar indeksu stabilny i opóźnienie zapytań poniżej 200 ms przy typowych obciążeniach.

Q: Czy można zaplanować automatyczne ponowne indeksowanie?
A: Oczywiście. Użyj usługi Windows Service lub Azure Function, aby wywołać Index.AddDocument w określonych odstępach czasu, wprowadzając nowo przesłane pliki do indeksu.

Q: Czy redakcja trwale usuwa ukryte dane?
A: Tak — redakcja nadpisuje oryginalne bajty, co uniemożliwia odzyskanie danych nawet przy użyciu narzędzi forensic.

Q: Jakie wersje .NET są w pełni wspierane?
A: Zarówno .NET Framework 4.6.1+, jak i .NET Core 3.1+ (w tym .NET 5/6) są oficjalnie wspierane.

Zasoby


Ostatnia aktualizacja: 2026-07-02
Testowano z: GroupDocs.Search 21.2 i GroupDocs.Redaction 21.1 dla .NET
Autor: GroupDocs

Powiązane samouczki