Método IModelKeyReference::SetKey (dbgmodel.h)
El método SetKey de una referencia de clave se comporta como el método SetKey en IModelObject. Asignará el valor de la clave. Si la clave original era un descriptor de acceso de propiedad, esto reemplazará el descriptor de acceso de propiedad. No llamará al método SetValue en el descriptor de acceso de propiedad.
Sintaxis
HRESULT SetKey(
IModelObject *object,
IKeyStore *metadata
);
Parámetros
object
Valor que se va a asignar a la clave.
metadata
Metadatos opcionales que se van a asociar a la clave.
Valor devuelto
Este método devuelve HRESULT que indica éxito o error.
Observaciones
de ejemplo de código de
ComPtr<IDataModelManager> spManager; /* get the data model manager */
ComPtr<IModelObject> spObject; /* get an object */
ComPtr<IModelKeyReference> spKeyRef;
if (SUCCEEDED(spObject->GetKeyReference(L"Id", &spKeyRef, nullptr)))
{
VARIANT vtValue;
vtValue.vt = VT_UI8;
vtValue.ullVal = 42;
ComPtr<IModelObject> sp42;
if (SUCCEEDED(spManager->CreateIntrinsicObject(ObjectIntrinsic, &vtValue, &sp42)))
{
if (SUCCEEDED(spKeyRef->SetKey(sp42.Get(), nullptr)))
{
// The "Id" key has been overwritten with the value 42.
// If the "Id" key originally was a property accessor, it isn't anymore.
// This would not have called SetValue() on the property accessor.
// It replaced the property accessor with a static "42".
}
}
}
Requisitos
Requisito | Valor |
---|---|
encabezado de | dbgmodel.h |