Mysql TFS2015-显示所有共享和用户拥有的通知及其所有者

Mysql TFS2015-显示所有共享和用户拥有的通知及其所有者,mysql,tfs,notifications,tfs-2015,Mysql,Tfs,Notifications,Tfs 2015,我正在尝试编写一个SQL查询,该查询将列出TFS 2015内部部署上所有共享和用户拥有的VST的更改通知。根据我的研究,通知应该存储在tbl_EventSubscription表中,但是没有关于事件是用户拥有的还是共享的信息,只有订阅者的订阅ID,我不知道在哪里搜索所有者 如果有可能用RESTAPI解决这个问题,它也会有所帮助 任何帮助或指导都将不胜感激。不建议您直接深入TFS数据库。请勿对TFS DBs进行任何更改,否则可能会失去Microsoft的支持 由于您已经获得了Subscriptio

我正在尝试编写一个SQL查询,该查询将列出TFS 2015内部部署上所有共享和用户拥有的VST的更改通知。根据我的研究,通知应该存储在tbl_EventSubscription表中,但是没有关于事件是用户拥有的还是共享的信息,只有订阅者的订阅ID,我不知道在哪里搜索所有者

如果有可能用RESTAPI解决这个问题,它也会有所帮助


任何帮助或指导都将不胜感激。

不建议您直接深入TFS数据库。请勿对TFS DBs进行任何更改,否则可能会失去Microsoft的支持

由于您已经获得了SubscriptionID,要找出“SubscriptionID”列中GUID后面隐藏的用户标识,可以使用以下SQL语句:

SELECT  es.Id, 
        es.EventType, 
        es.Expression, 
        sic.mail_address, 
        sic.computed_display_name 
FROM    tbl_EventSubscription es 
JOIN    [Tfs_Configuration].[dbo].tbl_security_identity_cache sic 
ON      sic.tf_id = es.SubscriberId 
WHERE   es.Id = 123

更多详情请看这个博客:

好的,我想我明白了:

   SELECT Notif.Id AS 'Notification Id',
          Notif.EventType AS 'Event Type',
          Notif.Classification AS 'Notification Classification',
          Const.IdentityDisplayName AS 'Notification Owner'
     FROM [Tfs_Development].[dbo].[tbl_EventSubscription] Notif
LEFT JOIN [Tfs_Development].[dbo].[Constants] Const ON Const.TeamFoundationId = Notif.SubscriberId
 ORDER BY Notif.Id
@PatrickLu MSFT我不知道为什么,但我在Tfs_配置中没有tbl_安全性_身份_缓存,但我在Tfs_开发中有它,它是空的。我使用Tfs_Configuration.dbo.tbl_Identity作为用户名的参考,但它没有为团队订阅者甚至一些用户返回名称,因此最后我将使用我的解决方案

谢谢你的帮助