Поделиться через


ActiveDirectoryMembershipProvider.GetUserNameByEmail(String) Метод

Определение

Возвращает имя пользователя, связанное с указанным адресом электронной почты.

public:
 override System::String ^ GetUserNameByEmail(System::String ^ email);
public override string GetUserNameByEmail (string email);
override this.GetUserNameByEmail : string -> string
Public Overrides Function GetUserNameByEmail (email As String) As String

Параметры

email
String

Адрес электронной почты для поиска.

Возвращаемое значение

Имя пользователя, связанное с указанным адресом электронной почты.

Исключения

Длина параметра email превышает 256 символов.

-или-

После удаления пробелов параметр email пустой.

В хранилище данных имеется более одного пользователя с одинаковым адресом электронной почты, и значение свойства RequiresUniqueEmail равно true.

Поставщик не инициализирован.

Комментарии

Этот метод вызывается классом Membership для получения имени пользователя из хранилища данных Active Directory на основе адреса электронной почты пользователя.

Если несколько пользователей в хранилище данных о членстве имеют один и тот же адрес электронной почты, возвращается первое имя пользователя. Вы можете задать requiresUniqueEmail атрибуту элемента truemembership Element (ASP.NET Settings Schema) значение в файле конфигурации приложения, чтобы убедиться, что каждый адрес электронной почты в базе данных является уникальным.

Начальные и конечные пробелы удаляются из значения параметра email. Если адрес электронной почты пуст после обрезки, ArgumentException возникает исключение . Если адрес электронной почты равен , выполняется nullпоиск по всем именам пользователей в хранилище данных Active Directory и возвращается первое имя пользователя.

Рекомендуется не включать поиск в рабочих системах, пока не будет подтверждено, что поисковые запросы, выданные классом ActiveDirectoryMembershipProvider , не влияют на производительность сервера каталогов.

Важно!

Метод GetUserNameByEmail будет выполняться, даже если EnableSearchMethods свойство имеет значение false.

ActiveDirectoryMembershipProvider Так как класс предназначен для веб-среды без отслеживания состояния, он не может использовать оптимизации разбиения по страницам, предоставляемые базовыми System.DirectoryServices API. Это означает, что операции разбиения по страницам во время поиска в больших каталогах являются очень дорогостоящими и их следует избегать. Операции поиска всегда выполняются для сервера каталогов, настроенного в строке подключения, или на автоматически выбранном сервере в случае строки подключения, указывающей на домен. Поставщик не использует глобальный каталог для своих методов поиска.

Поставщик использует поиск по поддереву, начиная с точки поиска, указанной в строке подключения. ActiveDirectoryMembershipProvider Дополнительные сведения о строках подключения см. в разделе о классах.

Применяется к

См. также раздел