Поделиться через


Метод IModelKeyReference::GetContextObject (dbgmodel.h)

Метод GetContextObject возвращает контекст (этот указатель), который будет передан методу GetValue или SetValue объекта доступа свойств, если ключ, заданный в вопросе, относится к методу доступа к свойствам. Возвращаемый здесь объект контекста может совпадать с исходным объектом, полученным из GetOriginalObject. Если ключ находится в родительской модели и существует адаптатор контекста, связанный с этой родительской моделью, исходный объект является объектом экземпляра, на котором был вызван GetKeyReference или EnumerateKeyReferences. Объект контекста будет тем, что выходит из конечного адаптатора контекста между исходным объектом и родительской моделью, содержащей ключ, к которому ссылается этот ключ, является дескриптором. Если нет адаптаторов контекста, исходный объект и объект контекста идентичны.

Синтаксис

HRESULT GetContextObject(
  IModelObject **containingObject
);

Параметры

containingObject

Объект контекста, который будет передан любому методу доступа к свойствам, возвращается здесь.

Возвращаемое значение

Этот метод возвращает HRESULT, указывающий на успех или сбой.

Замечания

Пример кода

ComPtr<IModelObject> spObject; /* get an object */

ComPtr<IModelKeyReference> spKeyRef;
if (SUCCEEDED(spObject->GetKeyReference(L"Id", &spKeyRef, nullptr)))
{
    ComPtr<IModelObject> spContextObject;
    if (SUCCEEDED(spKeyRef->GetContextObject(&spContextObject)))
    {
        // spObject and spContextObject should be the same.
        // This is *NOT* true if there was an intervening call to OverrideContextObject 
    }
}

Требования

Требование Ценность
заголовка dbgmodel.h

См. также

интерфейс IModelKeyReference