如何将 TFS 项目链接限制为特定类型?

How to restrict TFS item links to a specific type?

我有以下 tfs wiql 查询 returns 我的一个项目和所有链接的项目(子项、相关项等):

var query = string.Format("SELECT * FROM WorkItemLinks WHERE " +
                "Source.[System.Id] IN ({0}) " +
                "AND (Target.[System.State] <> 'Deleted'" +
                "AND (Target.[System.WorkItemType] = 'eScrum Sprint Task' OR Target.[System.WorkItemType] = 'Bug') " +              
                "AND Target.[System.Title] not contains 'css') mode(MayContain)", storiesRange);

如何限制此查询,使其 returns 仅链接子类型的项目?

只需添加:

AND ([System.Links.LinkType] = 'System.LinkTypes.Hierarchy-Forward')

如果您不知道如何为自定义工作项查询编写一些 WIQL。

您可以先使用可视化 window 在门户网站 UI 中创建您的工作项查询。

如下图:

然后保存查询并在 visual studio 中打开查询。或者您可以使用一些 3 方扩展,例如这个 - Wiql Editor

直接将工作项查询转为WIQL语言。例如上面查询的 WIQL 应该是:

所以根据以上信息限制此查询,使其 returns 仅链接子类型的项目,您应该添加此限制:

[System.Links.LinkType] = 'System.LinkTypes.Hierarchy-Forward'