Я занят созданием функции поиска в моем приложении с графическим интерфейсом, которое работает на моем Windows Server для добавления, удаления, обновления и поиска пользователей. Я почти закончил сборку приложения, но не могу решить проблему получения подробностей из другого свойства, которое не указано в UserPrincipal, например, свойство 'Address'. Как я могу получить это свойство?
Я пробовал много стилей кодирования, чтобы попасть в данное свойство 'Адрес', но оно все равно не работает.
Вот код:
private void ListOfUsers(String ou)
{
List<string> users = new List<string>();
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "EMRE", "OU=" + ou + ",dc=emre,dc=han");
UserPrincipal qbeUser = new UserPrincipal(ctx);
PrincipalSearcher search = new PrincipalSearcher(qbeUser);
foreach (UserPrincipal user in search.FindAll())
{
users.Add(user.UserPrincipalName);
users.Add("********");
users.Add(user.GivenName);
users.Add(user.Surname);
if (user.GetUnderlyingObjectType() == typeof(DirectoryEntry))
{
using (var entry = (DirectoryEntry)user.GetUnderlyingObject())
{
if (entry.Properties["Address"] != null)
users.Add(entry.Properties["Street"].Value.ToString());
}
}
users.Add(user.VoiceTelephoneNumber);
users.Add(user.EmailAddress);
users.Add(ou);
}
string[] row = users.ToArray();
var listViewItem = new ListViewItem(row);
lstStudents.Items.Add(listViewItem);
}
Я всегда получаю нулевое значение, даже если свойство не равно нулю