2016-02-12 59 views
0

我試圖通過POSH在「Shared Queries」TFS工作項目文件夾中創建一個文件夾。如何在共享查詢TFS中創建自定義文件夾?

$teamProjectCollection = [Microsoft.TeamFoundation.Client.TfsTeamProjectCollectionFactory]::GetTeamProjectCollection($ProjectCollectionUri); 
     #Get Work Item Store object 
     $wiStore = $teamProjectCollection.GetService([Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore]) 
     $teamProject = $wiStore.Projects["$ProjectName"] 

$ teamProject returned is null。我可以列舉所有其他項目,但不是我指定的參數。 任何線索怎麼回事?

回答

1

您需要檢查您指定的項目名稱是否存在於團隊項目集合中,並確保您有權訪問它。

要創建下的「共享的查詢」的文件夾的文件夾,請參考下面的代碼細節:

$pathToAss4 = "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ReferenceAssemblies\v4.5" 
Add-Type -Path "$pathToAss2\Microsoft.TeamFoundation.WorkItemTracking.Client.dll" 
Add-Type -Path "$pathToAss2\Microsoft.TeamFoundation.VersionControl.Client.dll" 
Add-Type -Path "$pathToAss4\Microsoft.TeamFoundation.ProjectManagement.dll"; 

$projectname = "ProjectName" 
$CollectionUrl = "http://xxx.xxx.xxx.xxx:8080/tfs/defaultcollection" 
$tfs = [Microsoft.TeamFoundation.Client.TfsTeamProjectCollectionFactory]::GetTeamProjectCollection($CollectionUrl) 
$ws = $tfs.GetService([Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore]) 
$teamProject = $ws.Projects["$projectname"] 
$addfoldername = "NewFolder" 
$addfolder = new-object Microsoft.TeamFoundation.WorkItemTracking.Client.QueryFolder -ArgumentList "$addfoldername" 
$queryhi = $teamProject.QueryHierarchy 
$parentfolder = $queryhi["Shared Queries"] 
$parentfolder.Add($addfolder) 
$teamProject.QueryHierarchy.Save() 
相關問題