Compartilhar via


IReplicaMetadata::FindItemMetadataByUniqueIndexedFields

Retorna a entrada de metadados do item exclusiva que tem o valor especificado para o campo indexado.

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

Parâmetros

  • ppcszCustomFieldNames
    [in, size_is(cCustomFields)] O conjunto de nomes de campo indexados que definem os itens que serão pesquisados. Esses nomes de campo precisam estar na mesma ordem daquela usada para especificar o índice quando ISyncMetadataStore::InitializeReplicaMetadata foi chamado.
  • ppFieldValues
    [in, size_is(cCustomFields)] O conjunto de valores de campo indexados que definem os itens que serão pesquisados. Esses valores precisam estar na mesma ordem dos nomes em ppcszCustomFieldNames.
  • cCustomFields
    [in] O número de entradas em ppcszCustomFieldNames e em ppFieldValues.
  • ppItemMetadata
    [out] Retorna a entrada de metadados do item exclusiva que tem o valor especificado para o campo indexado.

Valor de retorno

  • S_OK

  • S_FALSE se nenhum item correspondente for encontrado.

  • E_POINTER

  • SYNC_E_METADATA_QUERY_REQUIRES_UNIQUE_INDEXED_FIELDS se um campo em ppcszCustomFieldNames não foi especificado como um campo de índice exclusivo quando os metadados foram inicializados.

  • SYNC_E_METADATA_QUERY_REQUIRES_INDEXED_FIELDS se um campo em ppcszCustomFieldNames não foi especificado como um campo de índice quando os metadados foram inicializados.

  • SYNC_E_METADATA_FIELD_INVALID_NAME se não houver um nome de campo em ppcszCustomFieldNames.

  • SYNC_E_METADATA_FIELD_INVALID_TYPE se um valor de campo em ppFieldValues não coincide com o tipo do campo correspondente.

Comentários

Os campos personalizados precisam ser estabelecidos quando os metadados da réplica são inicializados pela primeira vez passando uma lista de estruturas CUSTOM_FIELD_DEFINITION para ISyncMetadataStore::InitializeReplicaMetadata.

Os campos de índice precisam ser estabelecidos e marcados como exclusivos quando os metadados da réplica são inicializados pela primeira vez passando uma lista de estruturas CUSTOM_FIELDS_INDEX para ISyncMetadataStore::InitializeReplicaMetadata.

Consulte também

Referência

Interface IReplicaMetadata