2016-02-26 48 views
0

目前我能夠通過休耕代碼來獲取TFS中所有用戶的AssignedTo字段:TFS API,如何才能得到「分配到」用戶爲某一組(「小組」)

var tfs = TeamFoundationServerFactory.GetServer("http://vstspioneer:8080/tfs/VSTSDF"); 
var workItemStore = (WorkItemStore)tfs.GetService(typeof(WorkItemStore)); 
var allowedValues = workItemStore.FieldDefinitions[CoreField.AssignedTo].AllowedValues; 

foreach (String value in allowedValues) 
{ 
    Console.WriteLine(value); 
} 

但我的要求是取只有屬於某組的用戶(「在組」)。

我知道我們可以使用帶過濾器的FilteredAllowedValues。但我的問題是如果我們只想獲取某些組成員,那麼在過濾器中添加什麼。

var filters = new FieldFilterList(); 
    filters.Add(new FieldFilter(workItemStore.FieldDefinitions[CoreField.AssignedTo], ????)); 

var allowedValues = workItemStore.FieldDefinitions[CoreField.AssignedTo].FilteredAllowedValues(filters); 

enter image description here

回答

0

你可以得到所有的應用程序組,IIdentityManagementService.ListApplicationGroups方法首先:

var sec = tfs.GetService<IIdentityManagementService>(); 
Identity[] appGroups = sec.ListApplicationGroups(teamProject.ArtifactUri.AbsoluteUri); 

然後你就可以得到所有成員的應用程序組與IIdentityManagementService.ReadIdentities方法。

此博客提供了更多詳細信息,您可以查看它:http://geekswithblogs.net/TarunArora/archive/2011/09/30/tfs-sdk-get-groups-users-permissions-using-tfs-api-with.aspx

相關問題