J'utilise TFS IIdentityManagementService2 dans powershell pour obtenir les détails de l'utilisateur d'un objet utilisateur (champ Assigned To/Created By). Je suis capable d'obtenir un nom d'utilisateur unique comme domaine \ nom d'utilisateur. Comment puis-je obtenir l'identifiant d'email de l'utilisateur maintenant?Comment récupérer un e-mail d'utilisateur à partir d'un nom d'utilisateur dans PowerShell for TFS?
Comment récupérer un e-mail d'utilisateur à partir d'un nom d'utilisateur dans PowerShell for TFS?
Répondre
Vous pouvez utiliser la méthode GetProperty sur votre objet TeamFoundationIdentity
avec le "Courrier" clé:
user.GetProperty("Mail")
Un exemple de code pour votre référence:
private static readonly Func<TeamFoundationIdentity, string> _emailSelector =
identity =>
{
object value;
if (identity.TryGetProperty("ConfirmedNotificationAddress", out value) && !string.IsNullOrWhiteSpace((string)value))
{
return (string) value;
}
return (string) identity.GetProperty("Mail");
};
Vous pouvez également prendre un regard sur les articles connexes ci-dessous:
- Using the TFS 2012 API, how do I get the email address of a user?
- Get TFS User List (Mail, Sid, Account, Domain) (y compris le concept de tous Identitys dans TFS)
Parfait. Cela a servi mon but. Merci Patrick-MSFT. :) Cependant, je n'ai pas utilisé le paramètre null dans GetProperty. Quel est le but de cela? – dia
@dia Désolé mon erreur, c'est une autre méthode [Méthode GetAttribute] (https://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.framework.server.teamfoundationidentity.getattribute (v = vs.110). aspx) qui devrait aussi fonctionner, il y a une valeur par défaut dans cette méthode. J'ai mélangé les deux. Avoir édité la réponse. –
connexes https://stackoverflow.com/questions/39155773/get-email-and-display-name-from-alias-in -visual-studio-team-services –