0

如标题所述。我需要一份关于 tfs2019 中所有用户首选电子邮件设置的报告。任何帮助将不胜感激。

4

1 回答 1

0

在 tfs2019 中没有默认的方式来获取所有用户的首选电子邮件设置。您可以使用以下 api 来实现它:

static void Main(string[] args)

{

    TfsConfigurationServer tcs = new TfsConfigurationServer(new Uri("http://tfs2019:8080/tfs"));

    IIdentityManagementService ims = tcs.GetService<IIdentityManagementService>();

    TeamFoundationIdentity tfi = ims.ReadIdentity(IdentitySearchFactor.AccountName, "[Collection]\\Project Collection Valid Users", MembershipQuery.Expanded, ReadIdentityOptions.ExtendedProperties);

    TeamFoundationIdentity[] ids = ims.ReadIdentities(tfi.Members, MembershipQuery.None, ReadIdentityOptions.ExtendedProperties);


    foreach (TeamFoundationIdentity id in ids)

    {
        if (id.Descriptor.IdentityType == "System.Security.Principal.WindowsIdentity")

        {
            Console.WriteLine(id.DisplayName);
            Console.WriteLine(id.UniqueName);
            Console.WriteLine(id.GetAttribute("Mail", null));
        }

    }

    Console.ReadLine();

}
于 2021-02-25T07:49:19.747 回答