TFS2015:全局列表的 REST API
TFS2015: REST API for global lists
我正在开发一个自定义仪表板小部件,我必须从全局列表中读取它,但我找不到任何用于此类操作的 REST API 方法。
有什么想法吗?
您可以使用其余客户端的所有 exportWorkItemTypeDefinition() 方法。
这个方法有三个参数:
- project: string. Optional. Project ID or project name
- type: string. Optional.
- exportGlobalLists: boolean. Optional.
将"project"和"type"指定为"null",将"exportGlobalLists"指定为"true",您将获得导出的全局工作流,其中包含全局列表。
您仍然可以使用witadmin命令行工具来实现
显示全局列表的名称
witadmin listgloballist /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection
导出全局列表的定义
witadmin exportgloballist /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /f:C:mygloballists
我没有成功使用 exportWorkItemTypeDefinition() 来实现这一目标。就我而言,我想使用 C# 纯粹从后端执行此操作。
首先,您需要在项目中包含 Microsoft.TeamFoundation.Client 程序集。我们将使用它来查询 TFS。其次,我建议安装 JB.Tfs.Common,这是一个很好的扩展包,它提供了帮助程序 类 用于将全局列表管理为 POCO 对象。
一旦您添加了这些先决条件,获取全局列表确实是一项简单的任务。
public GlobalListCollection GetGlobalLists(string url)
{
var collectionUri = new Uri(url);
var teamProjectCollection = new TfsTeamProjectCollection(collectionUri, false);
var workItemStore = teamProjectCollection.GetService<WorkItemStore>();
return workItemStore.GetGlobalLists();
}
Url 是 TFS 集合的路径,例如:
我正在开发一个自定义仪表板小部件,我必须从全局列表中读取它,但我找不到任何用于此类操作的 REST API 方法。
有什么想法吗?
您可以使用其余客户端的所有 exportWorkItemTypeDefinition() 方法。
这个方法有三个参数:
- project: string. Optional. Project ID or project name
- type: string. Optional.
- exportGlobalLists: boolean. Optional.
将"project"和"type"指定为"null",将"exportGlobalLists"指定为"true",您将获得导出的全局工作流,其中包含全局列表。
您仍然可以使用witadmin命令行工具来实现
显示全局列表的名称
witadmin listgloballist /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection
导出全局列表的定义
witadmin exportgloballist /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /f:C:mygloballists
我没有成功使用 exportWorkItemTypeDefinition() 来实现这一目标。就我而言,我想使用 C# 纯粹从后端执行此操作。
首先,您需要在项目中包含 Microsoft.TeamFoundation.Client 程序集。我们将使用它来查询 TFS。其次,我建议安装 JB.Tfs.Common,这是一个很好的扩展包,它提供了帮助程序 类 用于将全局列表管理为 POCO 对象。
一旦您添加了这些先决条件,获取全局列表确实是一项简单的任务。
public GlobalListCollection GetGlobalLists(string url)
{
var collectionUri = new Uri(url);
var teamProjectCollection = new TfsTeamProjectCollection(collectionUri, false);
var workItemStore = teamProjectCollection.GetService<WorkItemStore>();
return workItemStore.GetGlobalLists();
}
Url 是 TFS 集合的路径,例如: