我正在尝试通过使用 wiql 查询来获取我们团队项目的所有不同迭代路径。
我的实际解决方案如下:
我使用这个查询
public static readonly string IterationPathsQuery = @"SELECT [System.IterationPath] FROM workitems
WHERE[System.WorkItemType] = 'Requirement'
OR[System.WorkItemType] = 'Feature'";
获取所有相关的 WorkItem 并遍历它们以获取所有不同的迭代路径。
private void FillIterationPathComboBox(WorkItemStore wiStore)
{
WorkItemCollection wiCollection = wiStore.Query(Constants.IterationPathsQuery);
var paths = new List<string>();
...
foreach (WorkItem wi in wiCollection)
{
...
if (!String.IsNullOrEmpty(wi.IterationPath) && !paths.Contains(wi.IterationPath))
{
paths.Add(wi.IterationPath);
}
}
foreach (string path in paths)
{
IterationPathComboBox.Items.Add(path);
}
}
但是这个解决方案的性能并不好。有没有办法只查询使用的不同迭代路径?我已经读过不支持“不同”,但也许有一种我还没有想到的方法。