IDynamicKeyProviderConcept::GetKey-Methode (dbgmodel.h)
Die GetKey-Methode für einen dynamischen Schlüsselanbieter ist weitgehend eine Überschreibung der GetKey-Methode in IModelObject. Vom Anbieter für dynamische Schlüssel wird erwartet, dass er den Wert des Schlüssels und alle metadaten zurückgibt, die diesem Schlüssel zugeordnet sind. Für den Fall, dass der Schlüssel nicht vorhanden ist (aber kein anderer Fehler auftritt), muss der Anbieter false im hasKey-Parameter zurückgeben und mit S_OK erfolgreich sein. Wenn dieser Aufruf nicht erfolgt, wird als Fehler beim Abrufen eines Schlüssels betrachtet und die Suche nach dem Schlüssel über die übergeordnete Modellkette explizit angehalten. Wenn False in hasKey zurückgegeben wird, wird die Suche nach dem Schlüssel fortgesetzt.
Beachten Sie, dass es für GetKey völlig legal ist, einen boxed property accessor als Schlüssel zurückzugeben. Dies wäre semantisch identisch mit der GetKey-Methode auf IModelObject , die einen Eigenschaftszugriffsor zurückgibt.
Syntax
HRESULT GetKey(
IModelObject *contextObject,
PCWSTR key,
IModelObject **keyValue,
IKeyStore **metadata,
bool *hasKey
);
Parameter
contextObject
Das instance -Objekt (dieser Zeiger), für das ein Schlüssel abgerufen werden soll.
key
Der Name des abgerufenen Schlüssels.
keyValue
Der Vom dynamischen Anbieter ermittelte Wert des Schlüssels wird hier zurückgegeben. Wenn beim Abrufen ein Fehler auftritt und ein ungültiges HRESULT zurückgegeben wird, können erweiterte Fehlerinformationen zurückgegeben werden. Für die Implementierung der GetKey-Methode ist es legal, einen Eigenschaftszugriffsor (IModelPropertyAccessor) zurückzugeben.
metadata
Alle Metadaten, die dem Schlüssel zugeordnet sind, können hier optional zurückgegeben werden.
hasKey
Ein Hinweis darauf, ob der dynamische Anbieter über den Schlüssel verfügt oder nicht. Wenn der Anbieter nicht über den Schlüssel verfügt, muss er hier false zurückgeben und erfolgreich sein.
Rückgabewert
Diese Methode gibt HRESULT zurück, was auf Erfolg oder Fehler hinweist.
Anforderungen
Anforderung | Wert |
---|---|
Header | dbgmodel.h |