共用方式為


(dbgmodel.h) IModelObject::SetKey 方法

SetKey 方法是客戶端將開啟的方法,以便在物件上建立索引鍵 (,並將元數據與所建立的密鑰產生關聯) 。 如果指定的對象已經有具有指定名稱的索引鍵,就會發生兩種行為之一。 如果索引鍵位於指定的實例上,該索引鍵的值將會取代,就像原始索引鍵不存在一樣。 另一方面,如果索引鍵位於這個 所指定實例的父數據模型鏈結中,則會在此指定的實例上建立具有指定名稱的新索引鍵。 實際上,這會導致對象擁有兩個相同名稱的索引鍵, (類似於與基類相同名稱的成員所遮蔽的衍生類別) 。

語法

HRESULT SetKey(
  PCWSTR       key,
  IModelObject *object,
  IKeyStore    *metadata
);

參數

key

要為其設定值的索引鍵名稱。

object

索引鍵的值將會設定為此自變數中包含的物件。

metadata

要與新設定索引鍵相關聯的選擇性元數據。

傳回值

這個方法會傳回表示成功或失敗的 HRESULT。

備註

程式碼範例

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"
        }
    }
}

規格需求

需求
標頭 dbgmodel.h

另請參閱

IModelObject 介面