ContentIndexer 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使 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
- 继承
- 属性
Windows 要求
设备系列 |
Windows 10 (在 10.0.10240.0 中引入)
|
API contract |
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)
|
示例
注解
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 中的应用内容和属性。 |