首页 > 解决方案 > 在 Azure DevOps 中跨多个项目创建多个查询

问题描述

我正在尝试在多个项目中创建相同的查询。我觉得我快到了,但无法想出正确的“事情”来创建多个查询。我试过了 ”,” ”;” “和” - 并设法让它创建一个,但从来没有两者兼而有之。

有人可以帮忙吗??我已经放下了我正在尝试的事物类型的快速示例片段(这就是字段相同的原因)。如果我能做到这一点,我将在我拥有的所有不同查询中真正使用它(有很多!)

{    $url1="https://dev.azure.com/[ORGANISATION]/$($project)/_apis/wit/queries/Shared Queries?api-version=6.0"
   

    $JSON = @'
    {
      "name": "All User Stories JW6", "wiql": "SELECT [System.Id], [System.WorkItemType], [System.Title], [System.AssignedTo], [System.State],[System.Tags],[Microsoft.VSTS.Scheduling.OriginalEstimate],[Microsoft.VSTS.Scheduling.CompletedWork] FROM workitems WHERE [System.WorkItemType] = 'User Story' AND [System.State] = 'Active' ORDER BY [System.WorkItemType]",
      "name": "All User Stories JW7", "wiql": "SELECT [System.Id], [System.WorkItemType], [System.Title], [System.AssignedTo], [System.State],[System.Tags],[Microsoft.VSTS.Scheduling.OriginalEstimate],[Microsoft.VSTS.Scheduling.CompletedWork] FROM workitems WHERE [System.WorkItemType] = 'User Story' AND [System.State] = 'Active' ORDER BY [System.WorkItemType]"
    }
'@

标签: azureazure-devops

解决方案


在 Azure DevOps 中跨多个项目创建多个查询

恐怕我们无法在 JSON 正文中设置重复的键。

那是因为json 对象中的名称应该是唯一的,请检查RFC-7159中的状态:

由 Internet 工程任务组 (IETF) 发布的当前 JSON 标准规定“对象内的名称应该是唯一的”。

我在邮递员中使用身体,我得到了同样的警告:

在此处输入图像描述

如果我们在 JSON 正文中使用重复键,大多数流行的解析器可能只采用对象中存在的最后一个值作为特定键,而忽略以前的值

在您的示例中,只会All User Stories JW7创建查询。

要解决此问题,我们必须创建另一个主体 $JSON2,并发送另一个请求:

$JSON2 = @'
{
  "name": "All User Stories JW7", "wiql": "SELECT [System.Id], [System.WorkItemType], [System.Title], [System.AssignedTo], [System.State],[System.Tags],[Microsoft.VSTS.Scheduling.OriginalEstimate],[Microsoft.VSTS.Scheduling.CompletedWork] FROM workitems WHERE [System.WorkItemType] = 'User Story' AND [System.State] = 'Active' ORDER BY [System.WorkItemType]"
}
'@

$CreateQuery1= Invoke-RestMethod -Uri $url -headers $headers -Method Post -ContentType "application/json" -Body $Json1

$CreateQuery2= Invoke-RestMethod -Uri $url -headers $headers -Method Post -ContentType "application/json" -Body $Json2

推荐阅读