是否可以以编程方式修改TFS 2008/2010工作项类型?

时间:2011-01-17 10:24:19

标签: tfs tfs2010 tfs2008 tfs-sdk

有没有办法以编程方式修改TFS服务器上的工作项类型?

这样做的背景是我们使用类似于VSTS.Build.FoundIn的自定义字段,并希望从全局列表中填充构建号。对于单个项目,这不是问题 - 只需使用全局列表的名称手动指定SUGGESTEDVALUES规则即可。这种方法的问题在于它无法应用于我们在多个项目中重用的模板 - 无法在全局列表引用中为项目名称指定占位符。因此,每次我们创建TFS项目时,我们都需要手动修改全局列表名称,例如from < GLOBALLIST name =“Builds - [ProjectName]”/>到< GLOBALLIST name =“Builds - Project1”/>

似乎TFS有一个硬编码机制来为FoundIn和IntegrationBuild属性创建这些规则(请参阅this answer),我正在考虑为TFS事件创建一个处理程序来模拟我们的自定义字段的逻辑

1 个答案:

答案 0 :(得分:3)

您可以在团队基础服务器上订阅ProjectCreatedEvent,然后使用Shai Raig的帖子处理全局列表,以便在创建项目后创建全局列表。

http://blogs.microsoft.co.il/blogs/shair/archive/2010/03/08/tfs-api-part-23-create-global-list-xml-way.aspx

Martin Hinshelwood在订阅服务器活动方面有一篇很好的帖子: http://blog.hinshelwood.com/archive/2010/09/16/team-foundation-server-2010-event-handling-with-subscribers.aspx

编辑: 您可以使用Team Foundation Server Power Tools编辑工作项,还可以修改项目模板,以便工作项具有新字段。

更新1/20/2011: 我发现这个问题解答了如何导入和导出工作项: TFS Client APIs for creating workitem templates?