如何使用REST API获取TFS 2013中的所有工作项

时间:2017-02-28 11:41:03

标签: tfs tfs2013 tfs-workitem

我需要使用REST API

检索TFS 2015.2中的所有工作项

我在下面提到了Microsoft的链接

https://www.visualstudio.com/en-us/docs/work/track/using-queries

以下是我使用的类似网址格式

http://fabrikam:8080/tfs/DefaultCollection/q.aspx?pname=FabrikamFiber&wiql=SELECT [System.ID], [System.Title], [System.State] FROM WorkItems WHERE [System.TeamProject]='FabrikamFiber' AND [System.WorkItemType]='Bug' 

然而,这个网址最终只有错误

Error

错误 您要查找的页面目前无法使用。

TF400914:指定的团队q.aspx要么不存在,要么您无法访问它。

请善意表达一些解决这个问题的方法。

1 个答案:

答案 0 :(得分:0)

注意TFS 2015要求您编码URL语法的WIQL部分。您可以使用任何URL编码器工具对您的网址进行编码。

TFS 2015语法

https://{ServerName}/{CollectionName}/{TeamProjectName}/_workitems?_a=query&wiql={Encoded WorkItemQueryLanguage]

例如,以下超链接列出了fabrikam服务器上托管的FabrikamFiber / Web区域路径下所有错误的ID,标题和状态,并且已编码的URL

http://fabrikam:8080/tfs/DefaultCollection/FabrikamFiber/_workitems?_a=query&wiql=SELECT%20%5BSystem.ID%5D%2C%20%5BSystem.Title%5D%2C%20%5BSystem.State%5D%20FROM%20WorkItems%20WHERE%20%5BSystem.TeamProject%5D%3D'FabrikamFiber'%20AND%20%5BSystem.WorkItemType%5D%3D'Bug'%20AND%20%5BSystem.AreaPath%5D%3D'FabrikamFiber%5CWeb'%20%20

根据您的网址,如果您需要检索TFS 2015.2中的所有工作项,您似乎仍在使用TFS 2013语法。请改用TFS2015语法。

如果您需要检索TFS2013中的所有工作项。定义超链接的最简单方法是创建与您想要的匹配的查询,然后复制查询的URL。在Web门户/团队资源管理器中创建相同的查询以缩小问题范围,以查看是否能够获取所有工作项。并直接复制网址以仔细检查您的网址格式。