2010-07-19 74 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") 
相關問題