IDataModelManager::CreateDataModelObject 方法 (dbgmodel.h)
CreateDataModelObject 方法是一个简单的帮助程序包装器,用于创建数据模型对象,即作为父模型附加到其他对象的对象。 所有这些对象都必须通过 IDataModelConcept 支持数据模型概念。 此方法创建一个没有显式上下文的新空白合成对象,并将传入的 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().
}
}
要求
要求 | 值 |
---|---|
Header | dbgmodel.h |