Compartilhar via


Método IDataModelManager4::CreateDataModelObject (dbgmodel.h)

O método CreateDataModelObject é um wrapper auxiliar simples para criar objetos que são modelos de dados, ou seja, objetos que serão anexados como modelos pai a outros objetos. Todos esses objetos devem dar suporte ao conceito de modelo de dados por meio de IDataModelConcept. Esse método cria um novo objeto sintético em branco sem contexto explícito e adiciona o IDataModelConcept como a implementação do objeto recém-criado do conceito de modelo de dados. Isso também pode ser feito com chamadas para CreateSyntheticObject e SetConcept.

Sintaxe

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

Parâmetros

dataModel

A implementação de IDataModelConcept que será automaticamente adicionada ao objeto recém-criado como sua implementação do conceito de modelo de dados.

object

O objeto sintético recém-criado (com o conjunto de conceitos do modelo de dados) será retornado aqui.

Valor de retorno

Esse método retorna HRESULT.

Observações

de código de exemplo

ComPtr<IDataModelManager4> 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().
    }
}

Requisitos

Requisito Valor
cabeçalho dbgmodel.h

Consulte também

interface IDataModelManager4