我通过实现Microsoft.TeamFoundation.Framework.Server.ISubscriber
界面编写了一个TFS 2013插件。在ProcessEvent
方法中,我检查工作项是否已随
if (notificationType == NotificationType.Notification &&
notificationEventArgs is WorkItemChangedEvent)
如果为true,我想更新此工作项。实现这一目标的最佳方法是什么?
我目前的解决方案是使用Microsoft.TeamFoundation.Client
库打开与TFS的客户端连接,搜索工作项并更新它。这里的问题是,这是在触发事件的初始事件之后的第二次更改。我可以挂钩到更新事件,并在同一工作流程中更改工作项吗?
答案 0 :(得分:2)
不,您必须找到创建客户端并加载工作项的根目录。但是,您可以将旁路文本放在编辑用户名中。 ui将显示“由TfsService编辑的AwesomePlugin4。
因此,如果您的插件进行了编辑,则可以跳过。
此外,由于可以阻止处理,因此性能会下降。更好的模型是将更新逻辑放在TfsJob中,并在更改时触发事件中的作业。然后您的工作可以运行并根据需要进行任何更改或绕过。这更加强大。
http://exsertus.wordpress.com/2013/10/10/custom-tfs-jobs-and-job-monitoring/