Steve Borman
Steve Borman

Reputation: 375

List all project iterations using Microsoft.VisualStudio.Services.Client

Using Microsoft.VisualStudio.Services.Client how can I list all available iterations in my project?

I can connect happily to my VSO instance but I have no idea where to go from there.

VssConnection connection = new VssConnection(_collectionUri, _credentials);
ProjectHttpClient projClient = connection.GetClientAsync<ProjectHttpClient>().Result;

Upvotes: 4

Views: 2554

Answers (1)

starian chen-MSFT
starian chen-MSFT

Reputation: 33738

Refer to this code to get iterations:

var connection = new VssConnection(u, c);
            var workItemTracking = connection.GetClient<WorkItemTrackingHttpClient>();
            Microsoft.TeamFoundation.Core.WebApi.ProjectHttpClient projClient = connection.GetClientAsync<Microsoft.TeamFoundation.Core.WebApi.ProjectHttpClient>().Result;
           var projects= projClient.GetProjects().Result;
            foreach(var p in projects)
            {
                var iteration = workItemTracking.GetClassificationNodeAsync(project: p.Name, structureGroup: Microsoft.TeamFoundation.WorkItemTracking.WebApi.Models.TreeStructureGroup.Iterations, depth: 5).Result;
                GetIterations(iteration);
            }

 static void GetIterations(Microsoft.TeamFoundation.WorkItemTracking.WebApi.Models.WorkItemClassificationNode currentIteration)
        {
            Console.WriteLine(currentIteration.Name);
            if(currentIteration.Children!=null)
            {
                foreach (var ci in currentIteration.Children)
                {
                    GetIterations(ci);
                }
            } 
        }

Upvotes: 6

Related Questions