Metodo IModelObject::SetKey (dbgmodel.h)
Il metodo SetKey è il metodo a cui un client si rivolge per creare una chiave in un oggetto (e potenzialmente associare metadati alla chiave creata). Se un determinato oggetto ha già una chiave con il nome specificato, si verificherà uno dei due comportamenti. Se la chiave si trova nell'istanza specificata da questo, il valore di tale chiave verrà sostituito come se la chiave originale non esistesse. Se, d'altra parte, la chiave si trova nella catena di modelli di dati padre dell'istanza specificata da questo, nell'istanza specificata verrà creata una nuova chiave con il nome specificato. Ciò comporterebbe, in effetti, che l'oggetto abbia due chiavi con lo stesso nome (analogamente a una classe derivata che shadowing di un membro con lo stesso nome di una classe di base).
Sintassi
HRESULT SetKey(
PCWSTR key,
IModelObject *object,
IKeyStore *metadata
);
Parametri
key
Nome della chiave per cui impostare un valore.
object
Il valore della chiave verrà impostato sull'oggetto contenuto in questo argomento.
metadata
Metadati facoltativi da associare alla chiave appena impostata.
Valore restituito
Questo metodo restituisce HRESULT che indica l'esito positivo o negativo.
Commenti
Codice di esempio
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"
}
}
}
Requisiti
Requisito | Valore |
---|---|
Intestazione | dbgmodel.h |