2016-02-05 406 views
0

當我第一次保存workItem時,我使用TeamFoundationRequestContext查看某些字段的值並進行一些驗證。 另外我需要檢查AreaPath,但在RequestContext中只有areaId來。所以,也許有一個TFS API使用區域ID將AreaPath作爲字符串。 enter image description heretfs如何從區域Id值獲取區域路徑(字符串)

然後從查詢結果區域路徑:謝謝

回答

0

你可以簡單地通過創建一個查詢一樣獲得區域路徑。

或者你可以用API查詢區域路徑領域工作項:

TfsTeamProjectCollection tfs = new TfsTeamProjectCollection(new Uri("URL")); 
      tfs.EnsureAuthenticated(); 
      WorkItemStore workitemstore = tfs.GetService<WorkItemStore>(); 

      var wr = workitemstore.GetWorkItem(ID); 
      foreach(Field f in wr.Fields) 
      { 
       if (f.Name == "Area Path") 
       { 
        Console.WriteLine(f.Value); 
       } 
      } 
+0

當WorkItem firstTime保存時,上下文中沒有workItem Id –

0

沒有任何簡單的方法通過區域ID來獲得區域路徑。

您可能使用的方法是通過SQL數據庫中的區域ID查詢區域路徑,但不建議直接訪問TFS SQL數據庫。

如果您使用TFS2015,也可以使用Rest API來獲取節點信息。信息包括區域ID,然後您可以在其中搜索區域ID。

0

有幾種方法來枚舉區域使用API​​:

  • link介紹訪問使用Project.AreaRootNodes(第4節)的區域。
  • 這個link描述了枚舉使用底層XML結構的區域。

第一種方法返回一個既具有Id財產作爲Path屬性Node對象,所以你可以映射這些。