【问题标题】:Trying to use PowerShell to add a Parent Link to a TFS Task尝试使用 PowerShell 将父链接添加到 TFS 任务
【发布时间】:2014-08-25 03:27:48
【问题描述】:

我在通过 powershell 创建 TFS 任务时尝试添加父链接。但是,我只能添加一个相关链接:

function Create-New-WorkItem($projName, $taskType, $title, $state, $assignedTo, $iterationPath, $activity, $BLItem)
    {
      $tfs = Get-TfsServer
      $ws = $tfs.GetService([type]"Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore")
      $proj = $ws.projects[$projName]
      $workitem = $proj.workitemtypes[$taskType].newworkitem()
      $workitem.open()
      $workitem.title = $title
      $workitem.state = $state
      $workitem.fields["Assigned To"].value = $assignedTo
      $workitem.iterationpath = $iterationPath
      $workitem.fields["Activity"].value = $activity
      $id = Get-Parent-Link $BLItem  
      $workitem.links.add($id.ID)
      $workitem.close()
      $workitem.save()
    }

function Get-Parent-Link($backLogItemName)
  {
    $tfs = Get-TfsServer
    $WIQL = @"
    SELECT [System.Id]
    FROM WorkItems 
    where [System.Title] = '$backLogItemName'
    "@
    return $tfs.wit.query($WIQL)
  }

如何将链接添加为父链接而不是相关链接?

【问题讨论】:

    标签: powershell tfs azure-devops


    【解决方案1】:

    经过反复试验,我终于找到了一种将新工作项作为子项链接到父项(即积压项)的方法。

    $ws = $tfs.GetService([type]"Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore")
    $linkType = $ws.WorkItemLinkTypes[[Microsoft.TeamFoundation.WorkItemTracking.Client.CoreLinkTypeReferenceNames]::Hierarchy]
    

    添加您想要将新子工作项链接到的父项的工作项 ID 并创建一个工作项链接对象:

    $link = new-object Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemLink($linkType.ReverseEnd, 1234)  
    

    然后您可以将链接添加到工作项:

    $workitem.WorkItemLinks.Add($link)
    $workitem.save()
    

    【讨论】:

      【解决方案2】:

      您需要创建一个不同的链接类型对象。可以在 Shai 的博客上找到一个很好的 API 练习。

      http://blogs.microsoft.co.il/shair/2010/02/27/tfs-api-part-22-create-link-between-work-item-parent-child-etc/

      用于此的 PowerShell 几乎相同。

      【讨论】:

      • 感谢您的意见,我已经查看了这个家伙的博客文章,但仍然缺少我需要的 powershell 信息。
      猜你喜欢
      • 2017-09-17
      • 2020-05-22
      • 1970-01-01
      • 2021-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-25
      • 2016-12-12
      相关资源
      最近更新 更多