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 클래스를 사용하면 앱이 나중에 앱 또는 사용자가 신속하게 검색할 수 있는 시스템 인덱스에 속성 모음을 푸시할 수 있습니다. 속성 모음은 셸 속성 시스템의 모든 속성을 포함할 수 있으며 API 호출이 반환된 후 즉시 검색할 수 있습니다.
속성은 string-object 키-값 쌍으로 정의됩니다. 여기서 키는 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에서 앱 콘텐츠 및 속성을 업데이트. |