Index

Index class

Представляет основной класс для индексации документов и поиска по ним.

public class Index : IDisposable

Конструкторы

Имя Описание
Index() Инициализирует новый экземплярIndex класс в памяти.
Index(IndexSettings) Инициализирует новый экземплярIndex класс в памяти с определенными настройками индекса.
Index(string) Инициализирует новый экземплярIndex class. Создает новый или открывает существующий индекс на диске.
Index(string, bool) Инициализирует новый экземплярIndex class. Загружает существующий индекс с диска, еслиoverwriteIfExists являетсяЛОЖЬ; в противном случае создает новый индекс на диске.
Index(string, IndexSettings) Инициализирует новый экземплярIndex class. Создает новый индекс с определенными настройками или открывает существующий индекс на диске.
Index(string, IndexSettings, bool) Инициализирует новый экземплярIndex class. Загружает существующий индекс с диска, еслиoverwriteIfExists являетсяЛОЖЬ ; в противном случае создает новый индекс на диске с определенными настройками индекса.

Характеристики

Имя Описание
Dictionaries { get; } Получает хранилище словарей.
Events { get; } Получает концентратор событий для подписки на события.
IndexInfo { get; } Получает основную информацию об индексе.
IndexSettings { get; } Получает настройки индекса.
Repository { get; } Получает объект репозитория индексов, если индекс содержится в нем.

Методы

Имя Описание
Add(string) Выполняет операцию индексации. Добавляет файл или папку по абсолютному или относительному пути. Документы из всех подпапок будут проиндексированы.
Add(string[]) Выполняет операцию индексирования. Добавляет файлы или папки по абсолютному или относительному пути. Документы из всех подпапок будут проиндексированы.
Add(Document[], IndexingOptions) Выполняет операцию индексирования. Добавляет документы из файловой системы, потока или структуры.
Add(ExtractedData[], IndexingOptions) Выполняет операцию индексирования. Добавляет извлеченные данные в индекс.
Add(string, IndexingOptions) Выполняет операцию индексации. Добавляет файл или папку по абсолютному или относительному пути. Документы из всех подпапок будут проиндексированы.
Add(string[], IndexingOptions) Выполняет операцию индексирования. Добавляет файлы или папки по абсолютному или относительному пути. Документы из всех подпапок будут проиндексированы.
ChangeAttributes(AttributeChangeBatch) Применяет указанный пакет изменений атрибутов к проиндексированным документам без переиндексации во время операции обновления.
Delete(string[], UpdateOptions) Удаляет проиндексированные файлы или папки из индекса. Затем обновляет индекс без удаленных путей. Обратите внимание, что отдельный документ не может быть удален из индекса, если он был добавлен в индекс как часть папки.
Delete(UpdateOptions, string[]) Удаляет проиндексированные документы из потоков или структур. Затем обновляет индекс без удаленных документов.
Dispose() Освобождает все ресурсы, используемыеIndex .
GetAttributes(string) Получает все атрибуты, связанные с указанным индексированным документом.
GetDocumentText(DocumentInfo, OutputAdapter) Генерирует текст в формате HTML для проиндексированного документа и передает его через выходной адаптер.
GetDocumentText(DocumentInfo, OutputAdapter, TextOptions) Генерирует текст в формате HTML для проиндексированного документа и передает его через выходной адаптер.
GetIndexedDocumentItems(DocumentInfo) Получает массив вложенных элементов указанного документа (для документов-контейнеров, таких как ZIP, OST, PST).
GetIndexedDocuments() Получает массив всех проиндексированных документов.
GetIndexedPaths() Получает массив проиндексированных путей - документов или папок.
GetIndexingReports() Получает отчеты об операциях индексирования.
GetSearchReports() Получает отчеты о поисковых операциях.
Highlight(FoundDocument, Highlighter) Генерирует текст в формате HTML с выделенными найденными терминами.
Highlight(FoundDocument, Highlighter, HighlightOptions) Генерирует текст в формате HTML с выделенными найденными терминами.
Merge(Index, MergeOptions) Объединяет указанный индекс с текущим индексом. Обратите внимание, что другой индекс не будет изменен.
Merge(IndexRepository, MergeOptions) Объединяет индексы из указанного репозитория индексов в текущий индекс. Обратите внимание, что индексы в репозитории не будут изменены.
Notify(Notification) Передает указанный объект уведомления в индекс для выполнения уведомления.
Optimize() Минимизирует количество сегментов индекса, объединяя их друг с другом. Эта операция повышает производительность поиска.
Optimize(MergeOptions) Минимизирует количество сегментов индекса, объединяя их друг с другом. Эта операция повышает производительность поиска.
Search(SearchQuery) Поиск в индексе.
Search(string) Поиск в индексе.
Search(SearchImage, ImageSearchOptions) Выполняет обратный поиск изображения в индексе.
Search(SearchQuery, SearchOptions) Поиск в индексе.
Search(string, SearchOptions) Поиск в индексе.
SearchNext(ChunkSearchToken) Продолжает поиск фрагмента, начатый методом Search.
SearchNext(ChunkSearchToken, Cancellation) Продолжает поиск фрагмента, начатый методом Search.
Update() Переиндексирует документы, которые были изменены или удалены с момента последнего обновления. Добавляет новые файлы, добавленные в проиндексированные папки.
Update(UpdateOptions) Переиндексирует документы, которые были изменены или удалены с момента последнего обновления. Добавляет новые файлы, добавленные в проиндексированные папки.

Примечания

Узнать больше

Примеры

Пример демонстрирует типичное использование класса.

string indexFolder = @"c:\MyIndex\";
string documentsFolder = @"c:\MyDocuments\";
string query = "Einstein";

Index index = new Index(indexFolder); // Создание индекса в указанной папке
index.Add(documentsFolder); // Индексация документов из указанной папки

SearchResult result = index.Search(query); // Поиск по индексу

Смотрите также