是否有一个TFS扩展SDK API或REST API调用来从TFS 2017年让所有的用户?

问题描述 投票:2回答:1

我有一个TFS的扩展需要得到TFS 2017年的所有用户的列表中是否有一个API调用呢?我已经能够找到最接近的就是CoreHttpClient.getTeamMembers() REST客户端调用。但我正在寻找的东西,返回所有用户身份的列表。

谷歌搜索已经取得了一些成果对于不出现适用于2017年TFS旧版本的TFS的。

注1:这是一个现场托管TFS实例,而不是VSTS。

注2:我正在寻找一种方法来调用从前端JavaScript中的TFS扩展的代码,这个API。

谢谢!

UPDATE 2017年6月29日:见他的回答帕特里克的评论。显然,没有REST API这是从目前的TFS扩展前端调用。

tfs tfs2017
1个回答
3
投票

有没有REST API可现在做到这一点。你必须使用旧的客户端API与ReadIdentities方法。这也适用于TFS2017。示例代码:

TfsTeamProjectCollection tfs = new TfsTeamProjectCollection(new Uri("url"));
tfs.EnsureAuthenticated();

IGroupSecurityService gss = tfs.GetService<IGroupSecurityService>();

Identity SIDS = gss.ReadIdentity(SearchFactor.AccountName, "Project Collection Valid Users", QueryMembership.Expanded);

Identity[] UserId = gss.ReadIdentities(SearchFactor.Sid, SIDS.Members, QueryMembership.None);

foreach (Identity user in UserId)
{
    Console.WriteLine(user.AccountName);
    Console.WriteLine(user.DisplayName);
}

更多详细信息,请参阅How do I get list of all users in TFS 2013并且也有许多人在谷歌。

它使用.NET client libraries for TFS,你可以通过导入NuGet包到您的Visual Studio项目使用这些方法。这也与TFS2017工作。

© www.soinside.com 2019 - 2024. All rights reserved.