21

我需要在我们的项目中找到与某个主题相关的 TFS 工作项。为此,我尝试使用 Visual Studio 中的查询生成器查询工作项。

由于我希望搜索多个术语,因此我想像这样的查询:

WHERE (
Priority > 300 AND 
(Title.Contains('Dog') OR Title.Contains('Cat') OR Title.Contains('Hamster')))

现在,根据http://msdn.microsoft.com/en-us/library/dd286638.aspx(部分And/Or),应该可以这样做:

    | Priority|   >    | 300
And | Title | Contains | Dog
Or  | Title | Contains | Cat
Or  | Title | Contains | Hamster

但是......这并不像描述的那样工作:据我所知,这被视为

(优先级 > 300 AND Title.Contains('Dog')) OR Title.Contains('Cat') OR Title.Contains('Hamster')))

现在这对我来说有点问题,因为除了“优先级”标准之外,我还有 8 个附加标准需要应用于所有匹配项(日期、状态等)。而且我不仅有三个可能的冠军匹配,而且大约有十个。这样一来,我最终会得到一个非常长且大部分是多余的查询。

..或者,我在这里错过了什么吗?有没有另一种方式来表达这些陈述?或者还有其他查询 TFS 工作项的方法,比如其他工具?

谢谢!

4

1 回答 1

34

您需要将您的 Title 子句“组合”在一起以获得您期望的查询。选择三个“Title”子句,右键单击并选择“Group Clauses”。

组子句

这是我在 VS2012 中创建的用于执行此操作的查询的片段,但在 2010 年也是如此。

它只会查找具有优先级>4 包含 或 的标题 Crash工作ErrorWorking

使用分组子句查询

于 2012-10-24T10:37:03.827 回答