Freigeben über


ActiveDirectoryMembershipProvider.FindUsersByEmail Methode

Definition

Gibt anhand der E-Mail-Adresse des Benutzers eine Auflistung von Mitgliedschaftsbenutzern aus dem Active Directory-Datenspeicher zurück.

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

Parameter

emailToMatch
String

Die zu suchende E-Mail-Adresse bzw. der zu suchende Teil der E-Mail-Adresse.

pageIndex
Int32

Der Index der zurückzugebenden Ergebnisseite. pageIndex ist nullbasiert.

pageSize
Int32

Die Größe der zurückzugebenden Ergebnisseite.

totalRecords
Int32

Diese Methode gibt die Gesamtanzahl der zurückgegebenen Benutzer in der Auflistung zurück. Dieser Parameter wird nicht initialisiert übergeben.

Gibt zurück

Eine MembershipUserCollection mit pageSizeMembershipUser-Instanzen, die auf der von pageIndex angegebenen Seite beginnen.

Ausnahmen

Die FindUsersByEmail(String, Int32, Int32, Int32)-Methode wird aufgerufen, bevor die ActiveDirectoryMembershipProvider-Instanz initialisiert wird.

emailToMatch ist leer.

- oder -

emailToMatch überschreitet 256 Zeichen.

- oder -

pageIndex ist kleiner als 0.

- oder -

pageSize ist kleiner als 1.

- oder -

pageSize multipliziert mit pageIndex, plus pageSize, minus 1 ist größer als Int32.MaxValue.

Die EnableSearchMethods-Eigenschaft ist false.

Hinweise

Die FindUsersByEmail -Methode ruft einen MembershipUserCollection ab, der die Benutzerdatensätze aus dem Active Directory-Speicher enthält, die den emailToMatch Parametern entsprechen. Die Benutzerdatensätze werden in aufsteigender Reihenfolge nach E-Mail-Adresse sortiert zurückgegeben.

Der emailToMatch Parameter ist auf 256 Zeichen beschränkt.

Die ActiveDirectoryMembershipProvider -Klasse führt die Suche mit den Konfigurationswerten und serverSearchTimeout ausclientSearchTimeout. Da die ActiveDirectoryMembershipProvider -Klasse Mithilfe von Seiten mit 512 Zeilen pro Seite Suchvorgänge für den Verzeichnisserver ausführt, gelten die Timeouts für jede Seite mit ergebnissen, die von der ActiveDirectoryMembershipProvider Klasse abgerufen werden. Wenn eine Suchabfrage beispielsweise zu 1.000 Datenzeilen führt, ruft die ActiveDirectoryMembershipProvider Klasse diese Informationen als zwei Datenseiten ab. Dies bedeutet, dass das Client- und Suchtimeout ab 0 gezählt wird, wenn die ActiveDirectoryMembershipProvider Klasse die zweite Datenseite anfordert.

Die von der FindUsersByEmail -Methode zurückgegebenen Ergebnisse werden durch die pageIndex Parameter und pageSize eingeschränkt. Der pageSize Parameter gibt die maximale Anzahl von MembershipUser Instanzen an, die MembershipUserCollectionin zurückgegeben werden sollen. Der pageIndex Parameter gibt an, welche Ergebnisseite zurückgegeben werden soll, wobei 0 (null) die erste Seite angibt.

Der totalRecords Parameter ist ein out Parameter, der auf die Gesamtzahl der übereinstimmenden Mitgliedschaftsbenutzer festgelegt ist, die im Active Directory-Datenspeicher gefunden werden. Wenn beispielsweise 13 Benutzer für den konfigurierten Datenspeicher vorhanden sind und der pageIndex Wert 1 mit einem pageSize von 5 ist, enthält der MembershipUserCollection zurückgegebene benutzer den sechsten bis zehnten Benutzer. Der totalRecords Parameter wird auf 13 festgelegt.

Sie können steuern, ob die Suche nach Benutzern zulässig ist, indem Sie die EnableSearchMethods -Eigenschaft in der Konfigurationsdatei der Anwendung mithilfe des enableSearchMethods Attributs des Membership-Elements (ASP.NET Einstellungsschema) festlegen. Wenn Sie die EnableSearchMethods -Eigenschaft auf festlegen, false löst die FindUsersByEmail -Methode eine Ausnahme aus NotSupportedException .

Der Anbieter verwendet eine Unterstruktursuche ab dem in der Verbindungszeichenfolge angegebenen Suchpunkt. Weitere Informationen zu Verbindungszeichenfolgen finden Sie im ActiveDirectoryMembershipProvider Klassenthema.

Es wird empfohlen, die Suche auf Produktionssystemen erst dann zu aktivieren, wenn Sie bestätigt haben, dass sich die von der Klasse ausgegebenen Suchabfragen nicht negativ auf die ActiveDirectoryMembershipProvider Leistung Ihres Verzeichnisservers auswirken. Da die ActiveDirectoryMembershipProvider Klasse für eine zustandslose Webumgebung konzipiert ist, kann sie die Pagingoptimierungen nicht verwenden, die von den zugrunde liegenden System.DirectoryServices APIs verfügbar gemacht werden. Dies bedeutet, dass Pagingvorgänge während der Suche mit 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 zeigt. Der Anbieter verwendet keinen globalen Katalog für seine Suchmethoden.

Gilt für:

Weitere Informationen