而通过创造新的API工作项不能得到有效的用户列表中TFS的AssignedTo场
-
21-09-2019 - |
题
你好我试图通过TFS API来创建新的工作项目,这是我在下面用来获取有效用户谁可以分配工作项列表的方法。不知怎的,这使我对validUserSids行一个空引用异常。任何人都知道什么是错在这里?
private string[] TFSUsers(string server)
{
// Get a Reference to Team Foundation Server.
TeamFoundationServer tfs = tfsdata.GetTFS(server);
// Get a reference to Group Security Service.
IGroupSecurityService gss = (IGroupSecurityService)tfs.GetService(typeof(IGroupSecurityService));
// Resolve to SIDs
Identity validUserSids = gss.ReadIdentity(SearchFactor.AccountName, "TFS Valid Users", QueryMembership.Expanded);
// Resolve to actual users
Identity[] validUsers = gss.ReadIdentities(SearchFactor.Sid, validUserSids.Members, QueryMembership.None);
List<string> Users = new List<string>();
foreach (Identity user in validUsers)
{
Users.Add(user.DisplayName);
}
return Users.ToArray();
}
解决方案
下面是你将如何得到TFS的用户列表:
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);
}
不隶属于 StackOverflow