SearchIndexer.AddDocument
Declaration
public int AddDocument(string document, bool checkIfExists);public int AddDocument(string document, string name, string source, bool checkIfExists, Search.SearchDocumentFlags flags);Параметры
| Параметр | Описание |
|---|---|
| документ | Единый документ ID. |
| имя | Имя пути документа. |
| источник | Источник документа. Например, если документ является вложенным объектом, то источником должен быть путь к ассету контейнера. |
| checkIfExists | Передаёт истину, если у этого документа есть шанс уже существовать. |
| флаги | Флаги, описывающие характер документа. |
Возвращаемое значение
инт Индекс документа, используемый для добавления новых записей в индекс.
Описание
Добавление нового документа для индексирования.
using System.Linq; using UnityEditor; using UnityEditor.Search; using UnityEngine; static class Example_SearchIndexer_AddDocument { [MenuItem("Examples/SearchIndexer/AddDocument")] public static void Run() { var si = new SearchIndexer("SearchIndexerExample", FileUtil.GetUniqueTempPathInProject()); si.Start(); // The most efficient way of adding a document is by not checking if the // document ID was already added if you are sure that all your document IDs are unique. var di = si.AddDocument("document1", checkIfExists: false); // You can set `checkIfExists=true` to check for existing document IDs, and the system // will return an index of any existing document IDs. Debug.Assert(di == si.AddDocument("document1", checkIfExists: true)); // Once you have added a new document, you need to use the returned handle to index words, numbers and properties. si.AddWord("unity", 0, di); si.AddProperty("is", "awesome", di); si.AddNumber("version", 3.0, score: 0, di); si.Finish(() => { Debug.Assert(si.Search("unity version>=3").Count() == 1, "No result were found"); // Dispose of the SearchIndexer when you are done with it. si.Dispose(); }); } }