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 clientSearchTimeout Konfigurationswerten und serverSearchTimeout aus. Da die ActiveDirectoryMembershipProvider -Klasse Suchvorgänge für den Verzeichnisserver mithilfe von Seiten mit 512 Zeilen pro Seite ausführt, gelten die Timeouts für jede Seite mit ergebnissen, die von der ActiveDirectoryMembershipProvider -Klasse abgerufen werden. Wenn eine Suchabfrage beispielsweise 1.000 Datenzeilen enthält, ruft die ActiveDirectoryMembershipProvider -Klasse diese Informationen als zwei Seiten mit Daten ab. Dies bedeutet, dass das Client- und Suchtimeout ab 0 (null) beginnt, 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 in zurückgegeben werden MembershipUserCollectionsollen. 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 wurden. Wenn z. B. 13 Benutzer für den konfigurierten Datenspeicher vorhanden sind und der pageIndex Wert 1 mit einem pageSize von 5 war, enthält der MembershipUserCollection zurückgegebene den sechsten bis zehnten Benutzer. Der totalRecords Parameter wird auf 13 festgelegt.

Sie können steuern, ob die Suche nach Benutzern zugelassen werden soll, indem Sie die EnableSearchMethods -Eigenschaft in der Konfigurationsdatei der Anwendung mithilfe des enableSearchMethods Attributs des Membership-Elements (ASP.NET Settings Schema) festlegen. Das Festlegen der EnableSearchMethods -Eigenschaft auf false bewirkt, dass die FindUsersByEmail -Methode eine NotSupportedException Ausnahme auslöst.

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.

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. 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.

Gilt für:

Weitere Informationen