[MSCE C++] DependencyManagerLinkage::AppendLinkage添加无法成功

符老师,你好!

我参照C:\Program Files\Bentley\MicroStationCONNECTSDK\examples\Elements\DependencyDemo用C++ Clr写了一段类似的代码。程序返回结果Linkage表明Linkage追加成功,但是检查Linkage是否存在时无法找到对应数据,请问一下这个是什么原因?

    ElementId mId(mainId);
	ElementId sId(subId);
	DgnModelRefP subDgnModelRef = (DgnModelRef*)(subDgnModelRefP.ToPointer());
	EditElementHandleR  subEditElementHandle= EditElementHandle(sId, subDgnModelRef);
	DependencyLinkage depLinkage;
	StatusInt exsit = DependencyManagerLinkage::GetLinkage(nullptr, subEditElementHandle, appID, appValue);
	if (exsit != SUCCESS)
	{
		DependencyLinkage depLinkage;
		if (SUCCESS == DependencyManagerLinkage::InitLinkage(depLinkage, appID, appValue, DEPENDENCY_ON_COPY_DropDependency))
		{
			depLinkage.nRoots = 1;
			depLinkage.appValue = appValue;
			// Add the first element as root
			depLinkage.root.elemid[0] = mId;
		}
		ElementRefP oldFirstRef = subEditElementHandle.GetElementRef();
		StatusInt append =  DependencyManagerLinkage::AppendLinkage(subEditElementHandle, depLinkage, 0);
		//append结果为SUCCESS
		if (SUCCESS == subEditElementHandle.ReplaceInModel(oldFirstRef))
			return true;
	 }		
	return false;

我再次调用这段代码时,发现DependencyManagerLinkage::GetLinkage始终没有。