我正在使用下面的代码来获取工作项的父项和子项,并且获得了链接引用,现在我想从对象中获取工作项ID。请帮忙

IReference reference = linkManager.referenceFactory().createReferenceToItem(workItem
                               .getItemHandle());
                               ILinkQueryPage page;
                               ILinkQueryPage page1;

                               page = linkManager.findLinksByTarget("com.ibm.team.workitem.linktype.parentworkitem", reference, monitor);

                               ILinkCollection linkCollection = page.getLinks();


                               Collection childWI = linkCollection.getLinksById("com.ibm.team.workitem.linktype.parentworkitem");

                               System.out.println(childWI);

最佳答案

ILinkCollection linkCollection = page.getLinks();
Collection childWI = linkCollection.getLinksById(...)


这意味着您具有ILink的集合。

作为seen here,很容易解析到WorkItem的链接:

for (ILink l : links) {
    IItemHandle linkHandle = (IItemHandle) l.getTargetRef().resolve();
    if (linkHandle instanceof IWorkItemHandle) {
        IWorkItem aWorkItem = (IWorkItem) teamRepository.itemManager().fetchCompleteItem(linkHandle, IItemManager.DEFAULT, monitor);
    }
}


每个WorkItem都有一个getId()方法来访问其ID。

10-06 11:28