Compartilhar via


Método IDynamicKeyProviderConcept::GetKey (dbgmodel.h)

O método GetKey em um provedor de chave dinâmica é em grande parte uma substituição do método GetKey em IModelObject. Espera-se que o provedor de chave dinâmica retorne o valor da chave e os metadados associados a essa chave. Caso a chave não esteja presente (mas nenhum outro erro ocorra), o provedor deverá retornar false no parâmetro hasKey e ter êxito com S_OK. A falha nessa chamada é considerada uma falha ao buscar uma chave e interromperá explicitamente a pesquisa da chave por meio da cadeia de modelos pai. Retornar false em hasKey e êxito continuará a pesquisa pela chave.

Observe que é perfeitamente legal para GetKey retornar um acessador de propriedade em caixa como a chave. Isso seria semanticamente idêntico ao método GetKey em IModelObject retornando um acessador de propriedade.

Sintaxe

HRESULT GetKey(
  IModelObject *contextObject,
  PCWSTR       key,
  IModelObject **keyValue,
  IKeyStore    **metadata,
  bool         *hasKey
);

Parâmetros

contextObject

O objeto de instância (este ponteiro) para o qual obter uma chave.

key

O nome da chave que está sendo recuperada.

keyValue

O valor da chave conforme determinado pelo provedor dinâmico é retornado aqui. Se ocorrer um erro na busca e um HRESULT inválido for retornado, isso poderá retornar informações de erro estendidas. É legal que a implementação do método GetKey retorne um acessador de propriedade (IModelPropertyAccessor).

metadata

Os metadados associados à chave podem, opcionalmente, ser retornados aqui.

hasKey

Uma indicação de se o provedor dinâmico tem a chave ou não. Se o provedor não tiver a chave, ele deverá retornar false aqui e ter êxito.

Retornar valor

Esse método retorna HRESULT que indica êxito ou falha.

Requisitos

Requisito Valor
Cabeçalho dbgmodel.h

Confira também

Interface IDynamicKeyProviderConcept