共用方式為


IDataModelManager2::CreateDataModelObject 方法 (dbgmodel.h)

CreateDataModelObject 方法是簡單的協助程序包裝函式,用來建立數據模型的物件,也就是要附加為父模型的物件。 所有這類對象都必須透過 IDataModelConcept 支援數據模型概念。 此方法會建立沒有明確內容的新空白綜合物件,並將 inpassed IDataModelConcept 新增為新建立之對象的數據模型概念實作。 這同樣可以透過呼叫 CreateSyntheticObject 和 SetConcept 來完成。

語法

HRESULT CreateDataModelObject(
  IDataModelConcept *dataModel,
  IModelObject      **object
);

參數

dataModel

IDataModelConcept 的實作,此實作會自動新增至新建立的對象作為數據模型概念的實作。

object

此處會傳回新建立的綜合物件 (數據模型概念集) 。

傳回值

這個方法會傳回 HRESULT。

備註

範例程式碼

ComPtr<IDataModelManager> spManager; /* get the data model manager */

// We need some IDataModelConcept implementation.  Provide a 
// minimal one for example purposes.
class MyDataModel :
    public Microsoft::WRL::RuntimeClass<
        Microsoft::WRL::RuntimeClassFlags<
            Microsoft::WRL::RuntimeClassType::ClassicCom
            >,
        IDataModelConcept
        >
{
public:

    IFACEMETHOD(InitializeObject)(
        _In_ IModelObject * /*pContextObject*/, 
        _In_opt_ IDebugHostTypeSignature * /*pMatchingSignature*/, 
        _In_opt_ IDebugHostSymbolEnumerator * /*pWildcardMatches*/
        )
    {
        return S_OK;
    }

    IFACEMETHOD(GetName)(_Out_ BSTR *pModelName)
    {
        *pModelName = nullptr;
        return E_NOTIMPL;
    }
};

ComPtr<MyDataModel> spMyModel = Microsoft::WRL::Make<MyDataModel>();
if (spMyModel != nullptr)
{
    ComPtr<IModelObject> spDataModelObject;
    if (SUCCEEDED(spManager->CreateDataModelObject(spMyModel.Get(),
                                                   &spDataModelObject)))
    {
        // spDataModelObject is now a data model object and can be attached
        // as a parent to any other object via AddParentModel().
    }
}

規格需求

需求
標頭 dbgmodel.h

另請參閱

IDataModelManager2 介面