在 TFS2012 中,IGroupSecurityService
被标记为过时并替换为IIdentityManagementService
.
您可以使用IIdentityManagementService.ReadIdentity()
withIIdentityManagementService.AddMemberToApplicationGroup()
将 Windows 用户添加到 TFS 组,即使这些 Windows 用户还不知道 TFS。
这是通过指定ReadIdentityOptions.IncludeReadFromSource
选项来完成的。
下面是将 Windows 用户添加VSALM\Barry
到Fabrikam Fiber Web Team
(TFS 组)的示例,在FabrikamFiber
团队项目中,在http://vsalm:8080/tfs/FabrikamFiberCollection
服务器/集合中。
您将需要添加对以下内容的引用:Microsoft.TeamFoundation.Client
和Microsoft.TeamFoundation.Common
using Microsoft.TeamFoundation.Client;
using Microsoft.TeamFoundation.Framework.Client;
using Microsoft.TeamFoundation.Framework.Common;
using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var tpc = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri("http://vsalm:8080/tfs/FabrikamFiberCollection"));
var ims = tpc.GetService<IIdentityManagementService>();
var tfsGroupIdentity = ims.ReadIdentity(IdentitySearchFactor.AccountName,
"[FabrikamFiber]\\Fabrikam Fiber Web Team",
MembershipQuery.None,
ReadIdentityOptions.IncludeReadFromSource);
var userIdentity = ims.ReadIdentity(IdentitySearchFactor.AccountName,
"VSALM\\Barry",
MembershipQuery.None,
ReadIdentityOptions.IncludeReadFromSource);
ims.AddMemberToApplicationGroup(tfsGroupIdentity.Descriptor, userIdentity.Descriptor);
}
}
}