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é dynamique doit 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 qu’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 d’extraction d’une clé et interrompt explicitement la recherche de la clé via la chaîne de modèle parente. Le retour de la valeur false dans hasKey et success continue la recherche de la clé.
Notez qu’il est parfaitement légal pour GetKey de retourner un accesseur de propriété en boîte en tant que clé. Cela serait sémantiquement identique à la méthode GetKey sur IModelObject qui retourne un accesseur de propriété.
Syntaxe
HRESULT GetKey(
IModelObject *contextObject,
PCWSTR key,
IModelObject **keyValue,
IKeyStore **metadata,
bool *hasKey
);
Paramètres
contextObject
Objet 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 l’extraction et qu’un HRESULT non valide est retourné, cela peut renvoyer des informations d’erreur étendues. Il est légal que l’implémentation de la méthode GetKey retourne 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 retournée
Cette méthode retourne HRESULT qui indique la réussite ou l’échec.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | dbgmodel.h |