TFS 2015 获取带有 JavaScript 扩展名的全局列表

TFS 2015 getting the global list with JavaScript for extension

我们创建了一个 TFS 扩展,但我们希望能够从我们的全局列表中获取项目以用于填充下拉字段。有谁知道这是否可能?如果可以,您能否提供一段示例代码,说明如何使用 JavaScript?

访问全局列表并从中获取值

您可以通过 TFS API ExportGlobalLists 操作全局列表。但是,JavaScript.

不支持它

也可以使用witadmin命令行工具来实现

显示全局列表的名称

witadmin listgloballist /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection

导出全局列表的定义

witadmin exportgloballist /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /f:C:mygloballists

来源Link:Manage global lists for work item types

注意: 要访问 witadmin 命令行工具,您似乎只能打开命令提示符 window,其中您已经安装了 Visual Studio 并输入:cd %programfiles(x86)%\Microsoft Visual Studio 14.0\Common7\IDE

您可以在扩展程序中使用所有 exportWorkItemTypeDefinition() 方法来获取此信息。

这个方法有三个参数:

  • project: string. Optional. Project ID or project name
  • type: string. Optional.
  • exportGlobalLists: boolean. Optional.

将 "project" 和 "type" 指定为 "null",将 "exportGlobalLists" 指定为 "true",您将获得导出的全局工作流,其中包含全局列表。

我在以下 JavaScript 代码中使用了 TFS Work Item Tracking 休息客户端(我在变量 restClient 中有)来获取全局列表:

restClient.exportWorkItemTypeDefinition("myProject", null, true).then(function(xml) {
   //xml is now a string that I can parse and use as I need 
});

A link 关于 TFS WorkItemTrack 的文档 API 我发现以防其他人也发现它有用:https://www.visualstudio.com/en-us/docs/integrate/extensions/reference/client/api/tfs/workitemtracking/restclient/workitemtrackinghttpclient2_2