Método IDynamicKeyProviderConcept::GetKey (dbgmodel.h)
El método GetKey en un proveedor de claves dinámicas es en gran medida una invalidación del método GetKey en IModelObject. Se espera que el proveedor de claves dinámica devuelva el valor de la clave y los metadatos asociados a esa clave. En caso de que la clave no esté presente (pero no se produce ningún otro error), el proveedor debe devolver false en el parámetro hasKey y tener éxito con S_OK. Si se produce un error en esta llamada, se considera un error al capturar una clave y se detiene explícitamente la búsqueda de la clave a través de la cadena del modelo primario. Si devuelve false en hasKey y se realizará correctamente, continuará la búsqueda de la clave.
Tenga en cuenta que es perfectamente legal que GetKey devuelva un descriptor de acceso de propiedad boxed como clave. Esto sería semánticamente idéntico al método GetKey en IModelObject que devuelve un descriptor de acceso de propiedad.
Sintaxis
HRESULT GetKey(
IModelObject *contextObject,
PCWSTR key,
IModelObject **keyValue,
IKeyStore **metadata,
bool *hasKey
);
Parámetros
contextObject
Objeto de instancia (este puntero) para el que se va a obtener una clave.
key
Nombre de la clave que se va a recuperar.
keyValue
Aquí se devuelve el valor de la clave según lo determinado por el proveedor dinámico. Si se produce un error en la captura y se devuelve un VALOR HRESULT no válido, puede devolver información de error extendida. Es legal que la implementación del método GetKey devuelva un descriptor de acceso de propiedad (IModelPropertyAccessor).
metadata
Los metadatos asociados a la clave se pueden devolver opcionalmente aquí.
hasKey
Indicación de si el proveedor dinámico tiene la clave o no. Si el proveedor no tiene la clave, debe devolver false aquí y tener éxito.
Valor devuelto
Este método devuelve HRESULT, que indica que se ha realizado correctamente o no.
Requisitos
Requisito | Valor |
---|---|
Header | dbgmodel.h |