Freigeben über


ActiveDirectoryMembershipProvider.FindUsersByEmail Methode

Definition

Gibt eine Auflistung von Mitgliedschaftsbenutzern aus dem Active Directory-Datenspeicher basierend auf der E-Mail-Adresse des Benutzers 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

E-Mail-Adresse oder Teil der E-Mail-Adresse, nach der gesucht werden soll.

pageIndex
Int32

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

pageSize
Int32

Die Größe der zurückzugebenden Ergebnisseite.

totalRecords
Int32

Wenn diese Methode zurückgegeben wird, enthält die Gesamtanzahl der in der Auflistung zurückgegebenen Benutzer. Dieser Parameter wird nicht initialisiert übergeben.

Gibt zurück

A MembershipUserCollection containing pageSizeMembershipUser instances beginning at the page specified by pageIndex.

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 eine MembershipUserCollection mit den Benutzerdatensätzen aus dem Active Directory-Speicher ab, 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 stellt die Suche mit den clientSearchTimeout Werten und serverSearchTimeout Konfigurationswerten aus. Da die ActiveDirectoryMembershipProvider Klasse Suchvorgänge für den Verzeichnisserver mithilfe von Seiten mit 512 Zeilen pro Seite durchfü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 der Client und die Suchtimeouts von null gezählt werden, wenn die ActiveDirectoryMembershipProvider Klasse die zweite Datenseite anfordert.

Die von der FindUsersByEmail Methode zurückgegebenen Ergebnisse werden durch die Parameter und pageSize die pageIndex Parameter eingeschränkt. Der pageSize Parameter gibt die maximale Anzahl von MembershipUser Instanzen an, die in der MembershipUserCollection. 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 im Active Directory-Datenspeicher festgelegt ist. Wenn z. B. 13 Benutzer für den konfigurierten Datenspeicher vorhanden sind und der pageIndex Wert 1 mit pageSize 5 lautete, würde die MembershipUserCollection zurückgegebene Zahl den sechsten bis zehnten Benutzer enthalten. Der totalRecords Parameter wäre 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 enableSearchMethods des Attributs " membership Element" (ASP.NET Settings Schema) festlegen. Wenn Sie die EnableSearchMethods Eigenschaft so festlegen, false 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 Klassenthema.

Es wird empfohlen, die Suche auf Produktionssystemen erst zu aktivieren, wenn Sie bestätigt haben, dass die von der ActiveDirectoryMembershipProvider Klasse ausgestellten Suchabfragen die Leistung Ihres Verzeichnisservers nicht beeinträchtigen. Da die ActiveDirectoryMembershipProvider Klasse für eine zustandslose Webumgebung konzipiert ist, können die Pagingoptimierungen, die von den zugrunde liegenden System.DirectoryServices APIs verfügbar gemacht werden, nicht verwendet werden. Dies bedeutet, dass Pagingvorgänge bei Suchvorgängen für große Verzeichnisse sehr teuer sind und vermieden werden sollten. Suchvorgänge werden immer für den Verzeichnisserver ausgegeben, der in der Verbindungszeichenfolge konfiguriert ist, oder ein automatisch ausgewählter Server im Fall einer Verbindungszeichenfolge, die auf eine Domäne verweist. Der Anbieter verwendet keinen globalen Katalog für seine Suchmethoden.

Gilt für:

Weitere Informationen