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 类使应用能够将属性包推送到系统索引中,应用或用户稍后可快速搜索该索引。 属性包可以包含 shell 属性系统中的任何属性,并在 API 调用返回后立即可供搜索。

属性定义为 string-object 键值对,其中键是标准 Windows 属性名称(如 System.Author),值为 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 中的应用内容和属性。

适用于

另请参阅