วิธีสร้างดัชนีใน .NET ด้วย GroupDocs Search API
ในบทแนะนำนี้คุณจะได้ค้นพบ วิธีสร้างดัชนี สำหรับแอปพลิเคชัน .NET ของคุณโดยใช้ GroupDocs.Search และจากนั้นปกป้องเนื้อหาที่เป็นความลับด้วย GroupDocs.Redaction. เมื่อจบคู่มือคุณจะสามารถสร้าง, อัปเดต, และทำความสะอาดดัชนีที่สามารถค้นหาได้, และคุณจะเข้าใจว่าการผสานการค้นหาและการทำลบข้อมูลเป็นแนวปฏิบัติที่ดีที่สุดสำหรับการจัดการเอกสารอย่างปลอดภัย.
คำตอบสั้น
- “how to create index” หมายถึงอะไร? หมายถึงการสร้างโครงสร้างข้อมูลที่สามารถค้นหาได้ซึ่งทำการแมปเนื้อหาเอกสารไปยังคีย์การค้นหาอย่างรวดเร็ว.
- ต้องใช้ไลบรารีใด? GroupDocs.Search และ GroupDocs.Redaction สำหรับ .NET (แพ็กเกจ NuGet).
- ฉันสามารถทำดัชนี PDFs, Word, และรูปภาพได้หรือไม่? ใช่—รองรับรูปแบบกว่า 150 รูปแบบโดยอัตโนมัติ.
- ฉันจะลบเอกสารจากดัชนีอย่างไร? เรียกใช้เมธอด
Deleteพร้อมกับเส้นทางหรือ ID ของเอกสาร. - การทำลบข้อมูล (redaction) ทำก่อนหรือหลังการทำดัชนี? การทำลบข้อมูลควรทำก่อนเพื่อให้ข้อมูลที่ได้รับการปกป้องไม่เข้าสู่ดัชนี.
“how to create index” คืออะไร?
วลี how to create index หมายถึงกระบวนการสร้างโครงสร้างข้อมูลที่สามารถค้นหาได้ซึ่งเก็บการแมปคำ‑ไป‑เอกสารสำหรับการดึงข้อมูลอย่างรวดเร็ว. ใน GroupDocs โครงสร้างนี้อยู่บนดิสก์และสามารถอัปเดตแบบเพิ่มขั้นได้โดยไม่ต้องสร้างคอลเลกชันทั้งหมดใหม่.
ทำไมต้องใช้ GroupDocs.Search และ GroupDocs.Redaction ร่วมกัน?
GroupDocs.Search รองรับการทำดัชนีของ 150+ รูปแบบไฟล์ และสามารถจัดการดัชนีที่ใหญ่กว่า 10 GB ในขณะที่ใช้หน่วยความจำต่ำกว่า 200 MB เนื่องจากสตรีมไฟล์แทนการโหลดทั้งหมด. การเพิ่ม GroupDocs.Redaction จะทำให้ข้อความ, รูปภาพ, หรือเมตาดาต้าที่เป็นความลับถูกลบก่อนที่เนื้อหาจะถึงดัชนี, รับประกันการปฏิบัติตาม GDPR, HIPAA, และกฎระเบียบอื่น ๆ.
ข้อกำหนดเบื้องต้น
- Libraries & Versions – ติดตั้งแพ็กเกจ NuGet GroupDocs.Search และ GroupDocs.Redaction เวอร์ชันล่าสุดที่เข้ากันได้กับ .NET 6 หรือใหม่กว่า.
- IDE – Visual Studio 2022 (หรือ IDE ใด ๆ ที่รองรับ .NET 6).
- Knowledge – ทักษะพื้นฐานของ C#, ความคุ้นเคยกับการทำงานไฟล์ I/O, และความเข้าใจในแนวคิดการทำดัชนี.
การตั้งค่า GroupDocs.Redaction สำหรับ .NET
การติดตั้ง
ใช้ .NET CLI:
dotnet add package GroupDocs.Redaction
ใช้ Package Manager Console ใน Visual Studio:
Install-Package GroupDocs.Redaction
คุณสามารถค้นหา “GroupDocs.Redaction” ใน UI ของ NuGet Package Manager และติดตั้งเวอร์ชันเสถียรล่าสุดได้เช่นกัน.
การรับใบอนุญาต
คุณสามารถรับการทดลองใช้ฟรีหรือขอใบอนุญาตชั่วคราวเพื่อสำรวจคุณสมบัติทั้งหมดโดยไม่มีข้อจำกัด. เยี่ยมชม GroupDocs’ Purchase Page สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการขอรับใบอนุญาต.
การเริ่มต้นพื้นฐาน
Redactor เป็นคลาสหลักที่ทำการลบข้อมูลบนเอกสาร.
โค้ดตัวอย่างต่อไปนี้แสดงโค้ดขั้นต่ำที่จำเป็นเพื่อเริ่มใช้ GroupDocs.Redaction:
// Initialize the Redactor with a file path or stream
using (Redactor redactor = new Redactor("input.docx"))
{
// Your redaction code here
}
การตั้งค่าง่าย ๆ นี้เป็นทั้งหมดที่คุณต้องการเพื่อเริ่มใช้ GroupDocs.Redaction.
คู่มือการใช้งาน
วิธีสร้างดัชนี?
Index แทนคอนเทนเนอร์ที่สามารถค้นหาได้ซึ่งเก็บพจนานุกรมคำและเมตาดาต้าเอกสาร.
โหลดหรือสร้างอ็อบเจกต์ Index, ชี้ไปยังโฟลเดอร์ที่ไฟล์ดัชนีจะถูกเก็บ, แล้วเรียก Create. การดำเนินการจะเขียนไฟล์เมตาดาต้าที่จำเป็นและเตรียมเอนจินสำหรับการรับเอกสาร.
// Direct answer (40‑70 words):
Create a new `Index` instance by specifying the folder path where the index will reside, then invoke `Create()` to initialise the storage structures. The method writes index headers, term dictionaries, and a lock file, making the folder ready for document addition. This step is required only once per index location.
ขั้นตอนที่ 1: สร้างดัชนี
using GroupDocs.Search;
string indexFolder = @"YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/Indexing/DeleteIndexedPaths";
Index index = new Index(indexFolder);
// This line initializes an index at the provided folder path.
วิธีเพิ่มเอกสารลงในดัชนี?
Add แทรกเอกสารเดี่ยวลงในดัชนี, ในขณะที่ AddFolder ประมวลผลไฟล์ทั้งหมดในไดเรกทอรี.
คุณเพิ่มไฟล์โดยเรียก Add หรือ AddFolder. เอนจินจะอ่านไฟล์ที่รองรับแต่ละไฟล์, ดึงข้อความ, และอัปเดตพจนานุกรมคำ.
// Direct answer (40‑70 words):
Use `index.AddFolder("C:\\Docs")` or `index.Add("C:\\Docs\\file.pdf")` to feed documents into the index. The API streams each file, extracts searchable text, and stores term‑frequency data without loading the entire file into memory, which lets you index thousands of large PDFs efficiently.
ขั้นตอนที่ 2: เพิ่มโฟลเดอร์เอกสาร
string documentsFolder1 = @"YOUR_DOCUMENT_DIRECTORY";
string documentsFolder2 = @"YOUR_DOCUMENT_DIRECTORY2";
index.Add(documentsFolder1); // Adding the first folder of documents to the index
index.Add(documentsFolder2); // Adding the second folder of documents to the index
วิธีดึงเส้นทางที่ทำดัชนี?
GetIndexedPaths คืนคอลเลกชันของเส้นทางเอกสารทั้งหมดที่เก็บในดัชนี.
การดึงรายการเส้นทางไฟล์ที่ทำดัชนีช่วยให้คุณตรวจสอบว่าเอกสารใดบ้างที่สามารถค้นหาได้ในขณะนี้.
// Direct answer (40‑70 words):
Call `index.GetIndexedDocuments()` to obtain a collection of `IndexedDocumentInfo` objects, each containing the original file path, document ID, and indexing timestamp. Loop through the collection and output the `FilePath` property to confirm that every expected file has been successfully added.
ขั้นตอนที่ 3: แสดงเส้นทางที่ทำดัชนี
string[] indexedPaths1 = index.GetIndexedPaths();
foreach (string path in indexedPaths1)
{
Console.WriteLine(path); // Outputs the document paths
}
วิธีลบเอกสารจากดัชนี?
Delete ลบเอกสารออกจากดัชนีโดยใช้เส้นทางหรือรหัสระบุตัว.
เมื่อไฟล์ถูกลบหรือกลายเป็นล้าสมัย, คุณควรลบรายการนั้นเพื่อให้ผลการค้นหาถูกต้อง.
// Direct answer (40‑70 words):
Invoke `index.Delete("C:\\Docs\\obsolete.pdf")` or `index.Delete(documentId)` to purge a specific document from the index. The method removes all term entries linked to that file, updates the term dictionary, and frees the space on disk, ensuring that future queries no longer return the deleted content.
ขั้นตอนที่ 4: ลบเส้นทางเฉพาะ
using GroupDocs.Search.Options;
string[] pathsToDelete = { @"YOUR_DOCUMENT_DIRECTORY" };
DeleteResult deleteResult = index.Delete(pathsToDelete, new UpdateOptions());
// This deletes specified document paths from the index.
วิธีตรวจสอบเส้นทางที่ทำดัชนีที่เหลือหลังการลบ?
หลังการลบ, คุณสามารถเรียกเมธอดดึงข้อมูลอีกครั้งเพื่อยืนยันว่าดัชนีสะท้อนสถานะปัจจุบัน.
// Direct answer (40‑70 words):
Run `index.GetIndexedDocuments()` again and compare the resulting list with the pre‑deletion list. The missing file path confirms successful deletion, while the remaining entries confirm the index’s integrity. This verification step is especially important in automated pipelines.
ขั้นตอนที่ 5: ตรวจสอบเส้นทางที่เหลือ
string[] indexedPaths2 = index.GetIndexedPaths();
foreach (string path in indexedPaths2)
{
Console.WriteLine(path); // Displays remaining paths after deletion
}
การประยุกต์ใช้งานจริง
- Document Management Systems – ค้นหาสัญญา ใบแจ้งหนี้ หรือคู่มือได้อย่างรวดเร็วในหลายล้านไฟล์.
- Legal Document Review – ทำการลบข้อมูลที่เป็นสิทธิพิเศษก่อนทำดัชนีเพื่อหลีกเลี่ยงการเปิดเผยโดยบังเอิญ.
- Archival Solutions – เก็บรักษาเมตาดาต้าที่สามารถค้นหาได้สำหรับบันทึกประวัติศาสตร์โดยไม่ต้องโหลดคลังข้อมูลทั้งหมดเข้าสู่หน่วยความจำ.
- Content Management Platforms – ให้พลังการค้นหาทั่วทั้งเว็บไซต์สำหรับบล็อก ฐานความรู้ และห้องสมุดสื่อมัลติมีเดีย.
- Data Compliance Audits – รับรองว่าเฉพาะเนื้อหาที่ทำความสะอาดแล้วเท่านั้นที่สามารถค้นหาได้ ตรงตามข้อกำหนดด้านกฎระเบียบ.
ข้อควรพิจารณาด้านประสิทธิภาพ
- Optimize Indexing – กำหนดเวลาการทำดัชนีแบบเพิ่มขั้นตอนทุกคืน; ใช้
AddFolderพร้อมขนาดแบตช์ 100 ไฟล์เพื่อลดการกระตุ้น I/O. - Resource Management – ตรวจสอบ CPU และ RAM; GroupDocs.Search ประมวลผลไฟล์แบบสตรีมมิ่ง ทำให้หน่วยความจำสูงสุดต่ำกว่า 200 MB แม้กับดัชนีขนาด 10 GB.
- Best Practices – เก็บดัชนีบน SSD เพื่อให้การตอบสนองของคิวรีภายในวินาทีย่อย, และเปิดการบีบอัด (
index.Compression = true) เพื่อลดการใช้ดิสก์ลงครึ่งหนึ่ง.
คำถามที่พบบ่อย
Q: ฉันสามารถทำดัชนีไฟล์ที่ไม่ใช่ข้อความกับ GroupDocs ได้หรือไม่?
A: ใช่, GroupDocs.Search สามารถทำดัชนีได้มากกว่า 150 รูปแบบ—including PDFs, DOCX, PPTX, XLSX, และประเภทภาพ—โดยดึงข้อความที่ฝังอยู่ผ่าน OCR เมื่อจำเป็น.
Q: ฉันจะจัดการปริมาณเอกสารจำนวนมากอย่างไร?
A: ใช้ AddFolder พร้อมขนาดแบตช์ที่กำหนดค่าได้, รันการทำดัชนีในบริการพื้นหลัง, และเรียก Optimize() เป็นระยะเพื่อผสานส่วนดัชนีขนาดเล็ก.
Q: ประโยชน์ของการใช้การทำลบข้อมูลร่วมกับการทำดัชนีคืออะไร?
A: การทำลบข้อมูลจะลบข้อมูลส่วนบุคคลที่ระบุตัวได้ก่อนที่ข้อมูลจะถึงดัชนี, รับประกันว่าผลการค้นหาไม่เปิดเผยข้อมูลที่ได้รับการปกป้อง.
Q: สามารถปรับแต่งอัลกอริธึมการค้นหาได้หรือไม่?
A: GroupDocs.Search มีพจนานุกรมคำพ้อง, ตัวแยกโทเคนแบบกำหนดเอง, และฟิลเตอร์แบบ regular‑expression, ให้คุณปรับแต่งคะแนนความเกี่ยวข้องได้อย่างละเอียด.
Q: ฉันจะแก้ไขปัญหาการทำดัชนีที่พบบ่อยอย่างไร?
A: ตรวจสอบสิทธิ์ของโฟลเดอร์, ให้แน่ใจว่า .NET runtime ตรงกับเป้าหมายของไลบรารี, และตรวจสอบไฟล์บันทึกที่สร้างในโฟลเดอร์ดัชนีสำหรับข้อความข้อผิดพลาดโดยละเอียด.
แหล่งข้อมูล
- Documentation: GroupDocs Redaction .NET Docs
- API Reference: GroupDocs Redaction .NET API
- Download: Latest GroupDocs Releases
- Free Support: GroupDocs Forum
- Temporary License: Request a Temporary License
สำรวจแหล่งข้อมูลเหล่านี้เพื่อเพิ่มความเข้าใจและพัฒนาการใช้งาน GroupDocs.Search และ Redaction ใน .NET. Happy coding!
อัปเดตล่าสุด: 2026-07-26
ทดสอบกับ: GroupDocs.Search 23.10, GroupDocs.Redaction 23.10 for .NET
ผู้เขียน: GroupDocs