Método IModelObject::SetKey (dbgmodel.h)
O método SetKey é o método ao qual um cliente recorrerá para criar uma chave em um objeto (e potencialmente associar metadados à chave criada). Se um determinado objeto já tiver uma chave com o nome fornecido, um dos dois comportamentos ocorrerá. Se a chave estiver na instância fornecida por isso, o valor dessa chave será substituído como se a chave original não existisse. Se, por outro lado, a chave estiver na cadeia de modelos de dados pai da instância fornecida por isso, uma nova chave com o nome fornecido será criada na instância fornecida por isso. Isso faria com que o objeto tivesse duas chaves de mesmo nome (semelhante a uma classe derivada sombreando um membro do mesmo nome que uma classe base).
Sintaxe
HRESULT SetKey(
PCWSTR key,
IModelObject *object,
IKeyStore *metadata
);
Parâmetros
key
O nome da chave para a qual definir um valor.
object
O valor da chave será definido como o objeto contido neste argumento.
metadata
Metadados opcionais a serem associados à chave recém-definida.
Retornar valor
Esse método retorna HRESULT que indica êxito ou falha.
Comentários
Exemplo 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 |
---|---|
Cabeçalho | dbgmodel.h |