如何查询TFS工作项来计算每个人拥有状态的次数"已解决"?

时间:2016-08-10 02:40:02

标签: tfs azure-devops

我需要知道工作项具有状态Resolved的次数。

是否可以在TFS 2015或VSO / VSTS的Work > Queries标签中使用Home > Overview或某些Widget?

是否可以使用TFS API?

1 个答案:

答案 0 :(得分:0)

查询无法实现,但您可以通过TFS .NET Client Library APIRest API获取信息。

对于.NET Client Library API,您需要先获取工作项,然后检查工作项中的每个修订版,以使用“已解决状态”对修订进行计数。

对于Rest API,您可以按照以下页面获取工作项的所有修订:Get a list of work items revisions然后检查工作项状态“已解决”的次数。

为.NET Client Library API添加一个简单的代码示例:

using System;
using Microsoft.TeamFoundation.Client;
using Microsoft.TeamFoundation.WorkItemTracking.Client;

namespace CountState
{
    class Program
    {
        static void Main(string[] args)
        {
            string url = "https://xxxxxx.visualstudio.com";
            string state = "Resolved";
            int workitemid = 111;
            int statecount = 0;
            TfsTeamProjectCollection ttpc = new TfsTeamProjectCollection(new Uri(url));
            WorkItemStore wis = ttpc.GetService<WorkItemStore>();
            WorkItem wi = wis.GetWorkItem(workitemid);
            foreach (Revision rev in wi.Revisions)
            {
                if (rev.Fields["State"].Value.ToString() == state)
                {
                    statecount = statecount + 1;
                }
            }
        }
    }
}