TFS API C#查询语法
问题描述:
我想编写一个查询,在那里我可以执行检索backlog项目,如下图所示。TFS API C#查询语法
WorkItemCollection queryResults = workItemStore.Query(
"Select [State], [ID], [Title], [Description] " +
"From WorkItems " +
"Where [Work Item Type] IN ('Task', 'Bug', 'Product Backlog Item')" +
"AND [Iteration Path] Under 'ProjectName'" +
"AND [Area Path] Under 'ProjectName'" +
"And State IN ('New', 'Approved', 'Committed')");
但是,我没有收到任何数据。不知道如何正确构建查询。
答
得到您的查询摆脱@project的。在使用API时我不会自动替换。
您在AND之前也没有空间。
您的查询与图像不符!您可以在团队资源管理器中构建您想要的查询,然后在桌面上“另存为”。在记事本中打开并复制查询。
答
我结束了使用此查询,以避免两次击中TFS。然后,我根据WorkItem中公开的WorkItemLinks跟踪子项,该WorkItem从执行下面的wql中获得。一旦完成,我重新排列了父母在孩子面前提供(树视图)样式的条目。
string query = string.Format(@"
SELECT
[System.Title],
[System.Description],
[System.WorkItemType],
[System.Id]
FROM WorkItem
WHERE
([System.WorkItemType] IN GROUP 'Microsoft.RequirementCategory' OR [System.WorkItemType] IN GROUP 'Microsoft.BugCategory' OR [System.WorkItemType] IN GROUP 'Microsoft.TaskCategory')
AND [System.IterationPath] UNDER '{0}'
AND [System.State] IN ('New', 'To Do')
AND [System.AreaPath] UNDER '{0}'
ORDER BY
[Microsoft.VSTS.Common.Priority],
[System.Id]", teamProjectName);