다음을 통해 공유


IReplicaMetadata::FindItemMetadataByUniqueIndexedFields

인덱싱된 필드에 지정된 값이 있는 고유한 항목 메타데이터를 반환합니다.

HRESULT FindItemMetadataByUniqueIndexedFields(
  LPCWSTR * ppcszCustomFieldNames,
  IFieldValue ** ppFieldValues,
  BYTE cCustomFields,
  IItemMetadata ** ppItemMetadata);

매개 변수

  • ppcszCustomFieldNames
    [in, size_is(cCustomFields)] 검색할 항목을 정의하는 인덱싱된 필드 이름 집합입니다. 이 필드 이름은 ISyncMetadataStore::InitializeReplicaMetadata를 호출할 때 인덱스를 지정하는 데 사용된 순서와 동일한 순서여야 합니다.
  • ppFieldValues
    [in, size_is(cCustomFields)] 검색할 항목을 정의하는 인덱싱된 필드 값 집합입니다. 이 값은 ppcszCustomFieldNames의 이름과 순서가 같아야 합니다.
  • cCustomFields
    [in] ppcszCustomFieldNames 및 ppFieldValues의 항목 수입니다.
  • ppItemMetadata
    [out] 인덱싱된 필드에 지정된 값이 있는 고유한 항목 메타데이터를 반환합니다.

반환 값

  • S_OK

  • 일치하는 항목이 없으면 S_FALSE입니다.

  • E_POINTER

  • 메타데이터가 초기화될 때 ppcszCustomFieldNames의 필드가 고유한 인덱스 필드로 지정되지 않은 경우 SYNC_E_METADATA_QUERY_REQUIRES_UNIQUE_INDEXED_FIELDS입니다.

  • 메타데이터가 초기화될 때 ppcszCustomFieldNames의 필드가 인덱스 필드로 지정되지 않은 경우 SYNC_E_METADATA_QUERY_REQUIRES_INDEXED_FIELDS입니다.

  • ppcszCustomFieldNames의 필드 이름이 없으면 SYNC_E_METADATA_FIELD_INVALID_NAME입니다.

  • ppFieldValues의 필드 값이 해당 필드의 형식과 일치하지 않으면 SYNC_E_METADATA_FIELD_INVALID_TYPE입니다.

주의

사용자 지정 필드는 CUSTOM_FIELD_DEFINITION 구조 목록을 ISyncMetadataStore::InitializeReplicaMetadata에 전달하여 복제본 메타데이터를 처음 초기화할 때 설정되어야 합니다.

인덱스 필드는 CUSTOM_FIELDS_INDEX 구조 목록을 ISyncMetadataStore::InitializeReplicaMetadata에 전달하여 복제본 메타데이터를 처음 초기화할 때 설정되고 고유한 것으로 표시되어야 합니다.

참고 항목

참조

IReplicaMetadata 인터페이스