Freigeben über


ActiveDirectoryMembershipProvider.FindUsersByName Methode

Definition

Gibt eine Auflistung von Benutzern aus dem Active Directory-Datenspeicher anhand der Benutzernamen zurück.

public:
 override System::Web::Security::MembershipUserCollection ^ FindUsersByName(System::String ^ usernameToMatch, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public override System.Web.Security.MembershipUserCollection FindUsersByName (string usernameToMatch, int pageIndex, int pageSize, out int totalRecords);
override this.FindUsersByName : string * int * int * int -> System.Web.Security.MembershipUserCollection
Public Overrides Function FindUsersByName (usernameToMatch As String, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As MembershipUserCollection

Parameter

usernameToMatch
String

Der zu suchende Benutzername bzw. der zu suchende Teil eines Benutzernamens.

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 Datensätze 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 FindUsersByName(String, Int32, Int32, Int32)-Methode wird aufgerufen, bevor die ActiveDirectoryMembershipProvider-Instanz initialisiert wird.

usernameToMatch ist leer oder übersteigt die maximale Länge für den Benutzernamen (i. d. R. 256 Zeichen).

- oder -

usernameToMatch enthält Kommas.

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

usernameToMatch ist null.

Die EnableSearchMethods-Eigenschaft ist false.

Hinweise

Die FindUsersByName -Methode gibt eine MembershipUserCollection Instanz zurück, die die Benutzerdatensätze aus dem Active Directory-Datenspeicher für alle Benutzernamen enthält, die den userNameToMatch Parametern entsprechen. Die Datensätze werden alphabetisch nach Benutzername sortiert zurückgegeben.

Die von der FindUsersByName -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. Wenn Sie den EnableSearchMethods Eigenschaftswert auf festlegen, false löst die FindUsersByName Methode eine Ausnahme aus NotSupportedException .

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