簡體   English   中英

如何使用 API 列出 Azure Board 上的工作項目?

[英]How to list work items present on Azure Board using API?

我使用 boards API 來獲取 Azure boards 上的工作項目(在用戶故事、功能和史詩級別),但是 boards API 正在返回團隊董事會的模式,但我需要董事會上存在的工作項目列表。

有什么建議么?

請查看此 Microsoft 文檔

在從 azure 服務器遷移到 devops 服務期間,我做了幾乎相同的事情。

至少有兩種針對 azure devops 的編程方式。

  1. REST API
  2. .NET 客戶端庫

您可以在這里找到簡單的示例: azure devops 工作項目示例 github

讓我們關注 2).Net 客戶端庫,簡而言之來回答您的問題:想法是獲取所有 id`s 您正在尋找的內容,然后下載適當的工作項。

var serverConnection = new VssConnection(YourUri, new VssBasicCredential(string.Empty, YourPAT));

var wiql = new Wiql()
        {
            Query =
                "SELECT [System.Id], [System.Title] " +
                "FROM workitem " +
                "WHERE " +
                "[System.TeamProject] = 'YourProject' " +
                "AND ([System.State] = 'Active'" + "OR [System.State] = 'New' )" +
                "AND ([System.WorkItemType] = 'User Story' OR [System.WorkItemType] ='Feature')" +
                "ORDER BY [System.ChangedDate] DESC"
        };
var queryItems = wiClient.QueryByWiqlAsync(wiql).Result;
        var queriedIds = queryItems.WorkItems.Select(wiReference => wiReference.Id).ToArray();
        var listOfWorkItems = new List<WorkItem>();
        // Get workItems, limited to 200 each download
        for (int i = 0; i < queriedIds.Length; i += 200)
        {
            var subQueriedIds = queriedIds.Skip(i).Take(200).ToArray();
            if (subQueriedIds.Any())
                listOfWorkItems.AddRange(wiClient.GetWorkItemsAsync("YourProject", subQueriedIds, null, null, WorkItemExpand.All).Result);
        }

listOfWorkItems 現在包括您通過查詢定義的所有工作項。 市場上還有一個很好的 azure 插件, 在 azure 市場上稱為 wiql 編輯器

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM