2016-08-10 10 views
1

グローバルリストから読み込む必要があるカスタムダッシュボードウィジェットを開発していますが、この種の操作にREST APIメソッドが見つかりませんでした。TFS2015:グローバルリストのREST API

アイデア?

答えて

0

あなたはすべてexportWorkItemTypeDefinition()メソッドでレストクライアントを使用することができます。

  • プロジェクト:文字列

    は、この方法には3つのパラメータがあります。オプション。プロジェクトIDまたはプロジェクト名

  • 種類:文字列。オプション。
  • exportGlobalLists:ブール値。オプション。

の指定「プロジェクト」と「タイプ」を「ヌル」と「exportGlobalLists」を「true」には、グローバルリストをエクスポートしたグローバルワークフローがそれに含まれます。あなたはまだ

を達成するために witadminコマンドラインツールを使用することができます


グローバルリストの名前

witadmin listgloballist /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection 

輸出にグローバルリストの定義を表示

witadmin exportgloballist /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /f:C:mygloballists 

ソースリンクは:Manage global lists for work item types

+0

これは、ダッシュボードウィジェットからwitadminツールを呼び出すことが可能ですか? – ds19

+0

* witadmin *コマンドラインツールにアクセスするには、Visual Studioのバージョンをインストールしたか、次のように入力してください: 'cd%programfiles(x86)%\ Microsoft Visual Studio 14.0 \ Common7 \ IDE'ダッシュボードウィジェットは、グローバルリスト情報を含む.xmlファイルから読み込むことができますか? –

+0

restを使用して[exportWorkItemTypeDefinition()](https://www.visualstudio.com/en-us/docs/integrate/extensions/reference/client/api/tfs/workitemtracking/restclient/workitemtrackinghttpclient2_2#exportWorkItemTypeDefinition)メソッドを呼び出すこともできますクライアント。"project"と "type"を "null"に、 "exportGlobalLists"を "true"に指定する。 –

0

私はこれを達成するためにexportWorkItemTypeDefinition()を使用して成功を持っていませんでした。私の場合は、純粋にバックエンドからこれを行うためにC#を使いたいと思っていました。

まず、Microsoft.TeamFoundation.Clientアセンブリをプロジェクトに含める必要があります。これを使用してTFSを照会します。次に、グローバルリストをPOCOオブジェクトとして管理するためのヘルパークラスを提供する素敵な拡張パッケージであるJB.Tfs.Commonをインストールすることをお勧めします。

これらの前提条件を追加したら、グローバルリストをフェッチするのは簡単な作業です。

public GlobalListCollection GetGlobalLists(string url) 
{ 
    var collectionUri = new Uri(url); 
    var teamProjectCollection = new TfsTeamProjectCollection(collectionUri, false); 
    var workItemStore = teamProjectCollection.GetService<WorkItemStore>(); 
    return workItemStore.GetGlobalLists(); 
} 

URLはたとえば、TFSコレクションへのパスです:

http://example.com:8080/tfs/MyCollection