2010-07-19 72 views
3

我有几个工作项包含名为“Reference ID”的自定义字段 是否可以在此自定义字段上使用wiql进行查询。 目前我使用以下方法:是否有可能在TFS SDK中查询工作项目自定义字段

//项目的foreach在TFS

//形成wiql

WorkItemCollection workItemCollection = workItemStore.Query(
        " SELECT [System.Id], [System.WorkItemType]," + 
        " [System.State], [System.AssignedTo], [System.Title] " + 
        " FROM WorkItems " + 
        " WHERE [System.TeamProject] = '" + tfsProject.Name + 
        "' ORDER BY [System.WorkItemType], [System.Id]"); 

//运行对结果的循环设置

//如果workitem.Fields [“参考ID”] =所需值

//在此工作项目上执行一些任务

由于有1000多个结果,因此这种方法需要相当长的时间。

我的问题: 是否有可能也添加自定义字段作为过滤条件在上面的查询

回答

2

是。您使用与该项目关联的字段名称。您可以使用Process Explorer(TFS Power Tools)并打开WorkItemType。

下面是今天

Select Id from WorkItems where ([xxx.Ticket.OriginalTicketID] = '12345'); 
+1

或者,您可以将鼠标悬停在工作项目编辑器中字段的标签上,并且应该看到带有字段名称的工具提示。您可以在您的WIQL查询中使用该字段名称。 – 2010-07-19 13:52:40

+0

是的。我个人更喜欢使用内部名字 - 但当然你是对的。两者都可以工作。 – Robaticus 2010-07-19 13:58:47

+0

@Robaticus,你的意思是工具菜单下的“Process Editor”。 – 2011-07-06 00:47:24

0

当然,我们通过一个例子,刚才添加的自定义字段的名称。

0

如果您无权访问TFS电动工具或安装它的能力,那么您还可以使用工作项目对象的DisplayForm属性。

myItem = Workitem.GetWorkItem("12345") 
myItem.DisplayForm 

DisplayForm返回包含所有字段名称和属性的XML。您可以通过标签查找XML并获取相应的控制字段名称。

myItem.Fields.Item("Custom.FieldName") 
相关问题