Partager via


IDynamicKeyProviderConcept ::GetKey, méthode (dbgmodel.h)

La méthode GetKey sur un fournisseur de clés dynamiques est en grande partie un remplacement de la méthode GetKey sur IModelObject. Le fournisseur de clés dynamiques est censé retourner la valeur de la clé et toutes les métadonnées associées à cette clé. Dans le cas où la clé n’est pas présente (mais aucune autre erreur ne se produit), le fournisseur doit retourner false dans le paramètre hasKey et réussir avec S_OK. L’échec de cet appel est considéré comme un échec de récupération d’une clé et arrête explicitement la recherche de la clé via la chaîne de modèle parent. Le retour de la valeur false dans hasKey et la réussite continuent la recherche de la clé.

Notez qu’il est parfaitement légal pour GetKey de renvoyer un accesseur de propriété boxed en tant que clé. Cela serait sémantiquement identique à la méthode GetKey sur IModelObject renvoyer un accesseur de propriété.

Syntaxe

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

Paramètres

contextObject

Objet d’instance (ce pointeur) pour lequel obtenir une clé.

key

Nom de la clé récupérée.

keyValue

La valeur de la clé telle que déterminée par le fournisseur dynamique est retournée ici. Si une erreur se produit dans la récupération et qu’un HRESULT non valide est retourné, cela peut renvoyer des informations d’erreur étendues. Il est légal pour l’implémentation de la méthode GetKey de renvoyer un accesseur de propriété (IModelPropertyAccessor).

metadata

Toutes les métadonnées associées à la clé peuvent éventuellement être retournées ici.

hasKey

Indique si le fournisseur dynamique a la clé ou non. Si le fournisseur n’a pas la clé, il doit retourner false ici et réussir.

Valeur de retour

Cette méthode retourne HRESULT qui indique la réussite ou l’échec.

Exigences

Exigence Valeur
d’en-tête dbgmodel.h

Voir aussi

interface IDynamicKeyProviderConcept