代码之家  ›  专栏  ›  技术社区  ›  BlueMonkMN

在TFS中编辑项目的其他用户警报

tfs
  •  20
  • BlueMonkMN  · 技术社区  · 17 年前

    6 回复  |  直到 17 年前
        1
  •  23
  •   Martin Woodward    17 年前

    欢迎来到TFS的世界-很抱歉,你的洗礼将是一场火的洗礼。

    您应该警惕直接编辑数据库——最好避免使用TFS。这个 TFS Event Subscription tool (原汁原味 by this sites creator )我应该能够胜任这项工作,但我认为这可能有点过时,需要一些爱。上次我试的时候它对我不起作用,但我想它可能从那时起就被更新了。

    如果该工具不适用于您,那么这是一个您可以直接使用web服务的实例(这就是该工具在幕后所做的)。

    首先:

    http://localhost:8080/Services/V1.0/EventService.asmx
    

    http://localhost:8080/Services/V1.0/EventService.asmx?op=EventSubscriptions
    

    在userid字段中,输入星号(*),然后按invoke。

    这将返回TFS中所有事件订阅的一个大列表,包括允许TFS的部分与其他部分对话的订阅。如果向下滚动,您将找到您的电子邮件订阅。记下要删除的ID。

    然后转到“取消订阅”方法:

    http://localhost:8080/Services/V1.0/EventService.asmx?op=UnsubscribeEvent

    输入要删除的通知的ID,然后按invoke。对所有要删除的事件重复此操作。

    一旦你删除了那些你不想要的,你可以用电动工具等创建不同的。

    希望有帮助-祝你好运。

    马丁。

    请注意,不要得到任何友好的撤销提示或任何东西,因为这是相当低级的黑客行为。因此,在执行此操作之前,您需要进行备份等。

        2
  •  10
  •   Ed Blankenship Simon W    9 年前

    我在为本主题撰写的博客文章中提供了更多信息: http://www.edsquared.com/2012/02/09/Creating+EMail+Alerts+For+Team+Members+In+TFS.aspx

    enter image description here

        3
  •  1
  •   TrueWill    17 年前

    我会非常谨慎地直接编辑表格;请参阅中的注意事项和建议 this thread . (我没有尝试过他们推荐的应用程序,因此请采取适当的预防措施/备份。)

        4
  •  0
  •   woggles    15 年前

    我同意Martin关于不直接编辑数据库的观点,但这个查询可能有助于他的第一步(查找您想要取消订阅的活动的id):

    SELECT 
    ES.Id, 
    U.display_name, 
    ES.*
      FROM [Tfs_iSystems].[dbo].[tbl_EventSubscription] ES
     INNER JOIN [Tfs_Configuration].dbo.tbl_security_identity_cache U
     ON ES.SubscriberId = U.tf_id
    

    我发现使用Web服务生成的XML很麻烦。

    http://localhost:8080/tfs/DefaultCollection/Services/V1.0/EventService.asmx?op=UnsubscribeEvent

    注:这适用于TFS2010

        5
  •  0
  •   Ryan White    13 年前

    我还不确定我在这里到底在做什么,但我确实取得了一个小小的胜利,并且能够让页面出现,但我不得不改变这条道路:

        6
  •  0
  •   rony l    12 年前

    这在TFS 2010上对我很有效。基本上,有一个存储过程可以删除TFS数据库中的订阅。

    1. 运行ssms
    2. 在对象资源管理器中,查找名为 tfs_yourprojectname .
    3. tbl_EventSubscription 然后右键单击=>选择前1000名
    4. 查看订阅列表并决定要删除的订阅的id
    5. 查找名为 prc_UnsubscribeEvent 在对象资源管理器中,右键单击并选择“执行存储过程”。在事件订阅表中为要删除的警报输入id列的值。