Freigeben über


ActiveDirectoryMembershipProvider.GetUserNameByEmail(String) Methode

Definition

Ruft den Benutzernamen ab, der der angegebenen E-Mail-Adresse zugeordnet ist.

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

Parameter

email
String

Die gesuchte E-Mail-Adresse.

Gibt zurück

Der Benutzername, der der angegebenen E-Mail-Adresse zugeordnet ist.

Ausnahmen

email ist länger als 256 Zeichen.

- oder -

Nach dem Verkürzen ist email leer.

Im Datenspeicher sind mehrere Benutzer mit derselben E-Mail-Adresse vorhanden, und der RequiresUniqueEmail-Eigenschaftswert ist true.

Der Anbieter wird nicht initialisiert.

Hinweise

Diese Methode wird von der Membership -Klasse aufgerufen, um einen Benutzernamen aus dem Active Directory-Datenspeicher basierend auf der E-Mail-Adresse für den Benutzer abzurufen.

Wenn mehrere Benutzer im Mitgliedschaftsdatenspeicher dieselbe E-Mail-Adresse haben, wird der erste gefundene Benutzername zurückgegeben. Sie können das requiresUniqueEmail Attribut des Elements membership (ASP.NET Settings Schema) in der Anwendungskonfigurationsdatei auf true festlegen, um sicherzustellen, dass jede E-Mail-Adresse in der Datenbank eindeutig ist.

Beim email-Parameterwert werden führende und nachstehende Leerzeichen abgeschnitten. Wenn die E-Mail-Adresse nach dem Kürzen leer ist, wird eine ArgumentException ausgelöst. Wenn die E-Mail-Adresse lautet null, werden alle Benutzernamen im Active Directory-Datenspeicher durchsucht, und der erste Benutzername wird zurückgegeben.

Es wird empfohlen, die Suche auf Produktionssystemen erst zu aktivieren, wenn Sie bestätigt haben, dass die von der ActiveDirectoryMembershipProvider -Klasse ausgegebenen Suchabfragen die Leistung Ihres Verzeichnisservers nicht beeinträchtigen.

Wichtig

Die GetUserNameByEmail -Methode wird auch ausgeführt, wenn die EnableSearchMethods -Eigenschaft ist false.

Da die ActiveDirectoryMembershipProvider -Klasse für eine zustandslose Webumgebung konzipiert ist, kann sie die Von den zugrunde liegenden System.DirectoryServices APIs verfügbar gemachten Pagingoptimierungen nicht verwenden. Dies bedeutet, dass Pagingvorgänge während der Suche nach großen Verzeichnissen sehr teuer sind und vermieden werden sollten. Suchvorgänge werden immer für den verzeichnisserver ausgegeben, der in der Verbindungszeichenfolge konfiguriert ist, oder für einen automatisch ausgewählten Server, wenn eine Verbindungszeichenfolge auf eine Domäne verweist. Der Anbieter verwendet keinen globalen Katalog für seine Suchmethoden.

Der Anbieter verwendet eine Unterstruktursuche, die an dem in der Verbindungszeichenfolge angegebenen Suchpunkt beginnt. Weitere Informationen zu Verbindungszeichenfolgen finden Sie im ActiveDirectoryMembershipProvider Thema der -Klasse.

Gilt für:

Weitere Informationen