Freigeben über


IModelKeyReference2::SetKeyValue-Methode (dbgmodel.h)

Die SetKeyValue-Methode für einen Schlüsselverweis verhält sich wie die SetKeyValue-Methode auf IModelObject . Er weist den Wert des Schlüssels zu. Wenn der ursprüngliche Schlüssel ein Eigenschaftsaccessor war, wird dadurch die zugrunde liegende SetValue-Methode für den Eigenschaftenaccessor aufgerufen, anstatt den Eigenschaftenaccessor selbst zu ersetzen.

Syntax

HRESULT SetKeyValue(
  IModelObject *object
);

Parameter

object

Der Wert, der dem Schlüssel zugewiesen werden soll.

Rückgabewert

Diese Methode gibt HRESULT zurück, das den Erfolg oder Fehler angibt.

Hinweise

Codebeispiel

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->SetKeyValue(sp42.Get())))
        {
            // The value of the "Id" key is now 42.  If the "Id" key originally 
            // was a property accessor, this successfully called
            // the SetValue() method on the property accessor.  In such a case, 
            // the property accessor was not replaced with the static 42, 
            // it was called to set the value 42.
        }
    }
}

Anforderungen

Anforderung Wert
Header dbgmodel.h

Weitere Informationen

IModelKeyReference2-Schnittstelle