ContentIndexer クラス

定義

UWP アプリで、システム インデックスを使用してプライベート コンテンツを検索できるようにします。

public ref class ContentIndexer sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class ContentIndexer final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class ContentIndexer
Public NotInheritable Class ContentIndexer
継承
Object Platform::Object IInspectable ContentIndexer
属性

Windows の要件

デバイス ファミリ
Windows 10 (10.0.10240.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v1.0 で導入)

コンテンツ インデクサーのサンプル (Windows 10)

ビデオ デモ アプリのチュートリアル

注釈

ContentIndexer クラスを使用すると、アプリはプロパティ バッグをシステム インデックスにプッシュし、後でアプリまたはユーザーがすばやく検索できます。 プロパティ バッグにはシェル プロパティ システムのプロパティを含めることができるので、API 呼び出しが返された後すぐに検索できます。

プロパティは文字列オブジェクトのキーと値のペアとして定義され、キーは System.Author などの標準の Windows プロパティ名であり、値は PropertyValue インスタンスです。 プロパティはシステムに登録し、isColumn と isInvertedIndex を true に設定する必要があります。 ストリームとコンテンツ タイプを使用してフルテキスト検索コンテンツを提供することもできます。 これは、型の IFilter 実装の実行と、コンテンツのインデックス作成に対応します。

高度なクエリ構文 (AQS) を使用して、コンテンツに対してクエリを実行できます。

インデックスをプライマリ データ ストアとして使用しないでください。インデックスは検索可能なプロパティのキャッシュにすぎません。 キャッシュが失われた場合に備えて、インデックス内のすべてのデータを他の場所に格納する必要があります。 コンテンツは、アプリ パッケージとユーザーごとに分離されます。 パッケージは別のパッケージのデータに対してクエリを実行できませんが、オペレーティング システムはプッシュされたデータにアクセスできます。

使用できるプロパティの詳細については、「 Windows プロパティ システム」を参照してください。

プロパティ

Revision

ContentIndexer のバージョンを取得します。

メソッド

AddAsync(IIndexableContent)

プロパティとコンテンツを含むアプリ定義項目をシステム インデックスに追加します。

CreateQuery(String, IIterable<String>)

指定した検索フィルターを使用してクエリを作成し、取得するプロパティを識別します。

CreateQuery(String, IIterable<String>, IIterable<SortEntry>)

指定した検索フィルター、並べ替え順序を使用してクエリを作成し、取得するプロパティを識別します。

CreateQuery(String, IIterable<String>, IIterable<SortEntry>, String)

指定した検索フィルター、並べ替え順序、フィルター言語を使用してクエリを作成し、取得するプロパティを識別します。

DeleteAllAsync()

ContentIndexer からすべてのアプリ定義項目を削除します。

DeleteAsync(String)

指定したアプリ定義項目を ContentIndexer から削除します。

DeleteMultipleAsync(IIterable<String>)

指定したアプリ定義項目を ContentIndexer から削除します。

GetIndexer()

必要に応じて、既存のアプリごとのインデックスを取得するか、新しいインデックスを作成します。

GetIndexer(String)

指定した名前のアプリごとのインデックスを取得するか、必要に応じて新しいインデックスを作成します。

RetrievePropertiesAsync(String, IIterable<String>)

指定されたコンテンツ識別子に基づいてコンテンツ プロパティを取得します。

UpdateAsync(IIndexableContent)

ContentIndexer でアプリのコンテンツとプロパティを更新します。

適用対象

こちらもご覧ください