Сценарий: пользователь вводит имя (которое может быть либо именем, либо фамилией) в текстовое поле и нажимает кнопку поиска. Система должна вернуть все имена пользователей (вместе с полным именем) везде, где имя или фамилия совпадают с существующими пользователями AD.
Проблема: вводимый текст не сверяется одновременно с именем и фамилией.
List<string> GetUserDetails()
{
List<string> allUsers = new List<string>();
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "myDomain",
"OU=ounit,dc=myDC,dc=com");
UserPrincipal qbeUser = new UserPrincipal(ctx);
qbeUser.GivenName = _UITxtUserName.Text;
qbeUser.Surname = _UITxtUserName.Text;
PrincipalSearcher srch = new PrincipalSearcher(qbeUser);
foreach (var found in srch.FindAll())
{
allUsers.Add(found.DisplayName +"(" + found.SamAccountName+")");
}
allUsers.Sort();
return allUsers;
}
Я вижу, что проблема связана с _UITxtUserName (текстовое поле). Но не уверен, как это можно исправить. Использование .Net 3.5.