ActiveDirectoryMembershipProvider.FindUsersByName Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает коллекцию пользователей из хранилища данных Active Directory, основанную на именах пользователя.
public:
override System::Web::Security::MembershipUserCollection ^ FindUsersByName(System::String ^ usernameToMatch, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public override System.Web.Security.MembershipUserCollection FindUsersByName (string usernameToMatch, int pageIndex, int pageSize, out int totalRecords);
override this.FindUsersByName : string * int * int * int -> System.Web.Security.MembershipUserCollection
Public Overrides Function FindUsersByName (usernameToMatch As String, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As MembershipUserCollection
Параметры
- usernameToMatch
- String
Имя пользователя (или его часть) для поиска.
- pageIndex
- Int32
Индекс страницы возвращаемых результатов. Индекс pageIndex
отсчитывается от нуля.
- pageSize
- Int32
Размер возвращаемой страницы результатов.
- totalRecords
- Int32
По окончании метод возвращает общее число записей, возвращенных в коллекции. Этот параметр передается неинициализированным.
Возвращаемое значение
Объект MembershipUserCollection, содержащий экземпляры pageSize
MembershipUser, начиная со страницы, определенной параметром pageIndex
.
Исключения
Метод FindUsersByName(String, Int32, Int32, Int32) вызывается до инициализации экземпляра ActiveDirectoryMembershipProvider.
Параметр usernameToMatch
пустой, или превышает максимальную длину имени пользователя (обычно 256 символов).
-или-
usernameToMatch
содержит запятые.
-или-
Значение параметраpageIndex
меньше 0.
или
Значение параметра pageSize
меньше 1.
-или-
pageSize
умножено на pageIndex
, плюс pageSize
, минус 1 больше Int32.MaxValue.
usernameToMatch
имеет значение null
.
Значение свойства EnableSearchMethods — false
.
Комментарии
Метод FindUsersByName возвращает экземпляр, MembershipUserCollection содержащий записи пользователей из хранилища данных Active Directory для всех имен пользователей userNameToMatch
, соответствующих параметрам. Записи возвращаются в алфавитном порядке по имени пользователя.
Результаты, возвращаемые методом FindUsersByName , ограничены параметрами pageIndex
и pageSize
. Параметр pageSize
задает максимальное число экземпляровMembershipUser, возвращаемых в .MembershipUserCollection Параметр pageIndex
указывает, какая страница результатов возвращается, где 0 (ноль) обозначает первую страницу.
Параметр totalRecords
является параметром out
, который имеет общее число соответствующих пользователей членства, найденных в хранилище данных Active Directory. Например, если настроенное хранилище данных имеет 13 пользователей и pageIndex
значение равно 1 с pageSize
5, MembershipUserCollection возвращаемый будет содержать от шестого до десятого пользователей. Параметру totalRecords
будет присвоено значение 13.
Вы можете управлять разрешением поиска пользователей, задав EnableSearchMethods свойство в файле конфигурации приложения с помощью enableSearchMethods
атрибута элемента membership (ASP.NET Settings Schema).
EnableSearchMethods Если задать значение свойства , false
метод вызовет FindUsersByNameNotSupportedException исключение.
Поставщик использует поиск по поддереву, начиная с точки поиска, указанной в строке подключения. ActiveDirectoryMembershipProvider Дополнительные сведения о строках подключения см. в разделе о классах.
Рекомендуется не включать поиск в рабочих системах, пока не будет подтверждено, что поисковые запросы, выданные классом ActiveDirectoryMembershipProvider , не влияют на производительность сервера каталогов. ActiveDirectoryMembershipProvider Так как класс предназначен для веб-среды без отслеживания состояния, он не может использовать оптимизации разбиения по страницам, предоставляемые базовыми System.DirectoryServices API. Это означает, что операции подкачки во время поиска в больших каталогах стоят очень дорого, и их следует избегать. Операции поиска всегда выполняются на сервере каталогов, настроенном в строке подключения, или на автоматически выбранном сервере в случае строки подключения, указывающей на домен. Поставщик не использует глобальный каталог для своих методов поиска.