【发布时间】:2020-09-27 16:10:53
【问题描述】:
我想使用 Azure DevOps WebAPI 以编程方式检索与 Azure DevOps 中的工作项关联的所有拉取请求的信息。 我已经想出了如何检索
的实例Microsoft.TeamFoundation.WorkItemTracking.WebApi.Model.WorkItem
对于我的工作项目。
要查找与其相关的拉取请求,我可以遍历关系字段并找到 Url 包含 PullRequestId 的关系。在该字符串的末尾,我可以找到与GetPullRequestAsync 一起使用的拉取请求 ID。
网址可能如下所示:
vstfs:///Git/PullRequestId/2139bb34-57e3-4d7d-a6e1-1c0542a45e29%2F8a2b707f-ca7a-418d-8462-2bf076a54aad%2F39723
所以我的代码应该是这样的:
foreach ( WorkItemRelation wir in wi.Relations)
{
if ( wir.Url.Contains("PullRequestId"))
{
var pr = build.GetPullRequestAsync("<MyProject>", "Providername", "39723", "repository id").Result;
// Do somethin with pr object
}
}
我的问题如下
- 解析 URL 以检索拉取请求 ID 似乎不是一个好方法。我不能从某个字段中获取 id 吗?
-
GetPullRequestAsync需要提供者名称和存储库 ID。 但是如果该信息不能从实例中检索到Microsoft.TeamFoundation.WorkItemTracking.WebApi.Models.WorkItemRelation。 - 还有其他更简单的方法来做我想做的事情吗?
【问题讨论】:
标签: azure-devops azure-pipelines azure-devops-rest-api