Freigeben über


IDataModelManager3::CreateDataModelObject-Methode (dbgmodel.h)

Die CreateDataModelObject-Methode ist ein einfacher Hilfswrapper zum Erstellen von Objekten, die Datenmodelle sind – d. h. Objekte, die als übergeordnete Modelle an andere Objekte angefügt werden. Alle diese Objekte müssen das Datenmodellkonzept über IDataModelConceptunterstützen. Diese Methode erstellt ein neues leeres synthetisches Objekt ohne expliziten Kontext und fügt die passed IDataModelConcept als Implementierung des Datenmodellkonzepts des neu erstellten Objekts hinzu. Dies kann auch mit Aufrufen von CreateSyntheticObject und SetConcept erreicht werden.

Syntax

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

Parameter

dataModel

Die Implementierung von IDataModelConcept, die dem neu erstellten Objekt automatisch als Implementierung des Datenmodellkonzepts hinzugefügt wird.

object

Das neu erstellte synthetische Objekt (mit dem Datenmodell-Konzeptsatz) wird hier zurückgegeben.

Rückgabewert

Diese Methode gibt HRESULT zurück.

Bemerkungen

Beispielcode-

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

Anforderungen

Anforderung Wert
Header- dbgmodel.h

Siehe auch

IDataModelManager3-Schnittstelle