Método IModelObject::SetKey (dbgmodel.h)
El método SetKey es el método al que un cliente cambiará para crear una clave en un objeto (y posiblemente asociar metadatos a la clave creada). Si un objeto determinado ya tiene una clave con el nombre especificado, se producirá uno de los dos comportamientos. Si la clave está en la instancia dada por esto, el valor de esa clave se reemplazará como si la clave original no exista. Si, por otro lado, la clave está en la cadena de modelos de datos primarios de la instancia dada por esto, se creará una nueva clave con el nombre especificado en la instancia dada por este. Esto provocaría, en efecto, que el objeto tuviera dos claves del mismo nombre (similar a una clase derivada que sombrea un miembro del mismo nombre que una clase base).
Sintaxis
HRESULT SetKey(
PCWSTR key,
IModelObject *object,
IKeyStore *metadata
);
Parámetros
key
Nombre de la clave para la que se va a establecer un valor.
object
El valor de la clave se establecerá en el objeto contenido en este argumento.
metadata
Metadatos opcionales que se asociarán a la clave recién establecida.
Valor devuelto
Este método devuelve HRESULT que indica éxito o error.
Comentarios
Ejemplo de código
ComPtr<IDataModelManager> spManager; /* get the data model manager */
// Create a new object with a property called "Test" with a value of 42.
ComPtr<IModelObject> spNewObject;
if (SUCCEEDED(spManager->CreateSyntheticObject(nullptr, &spNewObject)))
{
VARIANT vtVal;
vtVal.vt = VT_I4;
vtVal.lVal = 42;
ComPtr<IModelObject> sp42;
if (SUCCEEDED(spManager->CreateIntrinsicObject(ObjectIntrinsic, &vtVal, &sp42)))
{
if (SUCCEEDED(spNewObject->SetKey(L"Test", sp42.Get(), nullptr)))
{
// We have placed a static "42" on the new object under the key "Test"
}
}
}
Requisitos
Requisito | Valor |
---|---|
Header | dbgmodel.h |