C # - Procure um gerenciador de usuários no diretório ativo
Começou a usar oSystem.DirectoryServices.AccountManagement
namespace, para executar a pesquisa em um usuário no diretório ativo (AD).Eu também preciso do gerente do usuário, mas eu pareço ter batido na estrada usando esse namespace. Código atual para obter uma pessoa:
class Person {
// Fields
public string GivenName = null;
public string Surname = null;
public string DistinguishedName = null;
public string Email = null;
public string MangerDistinguishedName = null; // Unable to set this
// Constructor
public Person(string userName) {
UserPrincipal user = null;
try {
user = GetUser(userName);
if (user != null) {
this.GivenName = user.GivenName;
this.Surname = user.Surname;
this.DistinguishedName = user.DistinguishedName;
this.Email = user.EmailAddress;
this.MangerDistinguishedName = user.<NO SUCH PROPERTY TO FIND A MANAGER'S DISTINGUISHED NAME>
}
else {
throw new MissingPersonException("Person not found");
}
}
catch (MissingPersonException ex) {
MessageBox.Show(
ex.Message
, ex.reason
, MessageBoxButtons.OK
, MessageBoxIcon.Error
);
}
catch (Exception ex) {
MessageBox.Show(
ex.Message
, "Error: Possible connection failure, or permissions failure to search for the username provided."
, MessageBoxButtons.OK
, MessageBoxIcon.Error
);
}
finally {
user.Dispose();
}
}
Executar busca pela pessoa
private UserPrincipal GetUser(string userName) {
PrincipalContext ctx = new PrincipalContext(ContextType.Domain);
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, userName);
return user;
}
Qual é outra maneira de acessar diretamente o nome distinto do gerente de um usuário específico?
Resposta parcial possívelAqui no VB, mas não vejo nada sobre me referir aos gerentes.Outra possível parcialAquimais uma vez, nada sobre gerentes.