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