Udostępnij za pośrednictwem


ActiveDirectoryMembershipProvider.FindUsersByEmail Metoda

Definicja

Zwraca kolekcję użytkowników członkostwa z magazynu danych usługi Active Directory na podstawie adresu e-mail użytkownika.

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

Parametry

emailToMatch
String

Adres e-mail lub część adresu e-mail do wyszukania.

pageIndex
Int32

Indeks strony wyników do zwrócenia. Funkcja pageIndex rozpoczyna liczenie od zera.

pageSize
Int32

Rozmiar strony wyników do zwrócenia.

totalRecords
Int32

Gdy ta metoda zwraca wartość , zawiera całkowitą liczbę użytkowników zwróconych w kolekcji. Ten parametr jest przekazywany jako niezainicjowany.

Zwraca

Obiekt MembershipUserCollection zawierający pageSizeMembershipUser wystąpienia rozpoczynające się od strony określonej przez pageIndex.

Wyjątki

emailToMatch jest pusta.

-lub-

emailToMatch przekracza 256 znaków.

-lub-

pageIndex wartość jest mniejsza niż 0.

-lub-

pageSize wartość jest mniejsza niż 1.

-lub-

pageSize pomnożony przez pageIndex, plus pageSize, minus 1 jest większy niż Int32.MaxValue.

Właściwość EnableSearchMethods to false.

Uwagi

Metoda FindUsersByEmail pobiera MembershipUserCollection rekordy użytkownika z magazynu usługi Active Directory, który jest zgodny z parametrami emailToMatch . Rekordy użytkowników są zwracane w kolejności rosnącej według adresu e-mail.

Parametr emailToMatch jest ograniczony do 256 znaków.

Klasa ActiveDirectoryMembershipProvider wystawi wyszukiwanie przy użyciu wartości clientSearchTimeout konfiguracji i serverSearchTimeout . ActiveDirectoryMembershipProvider Ponieważ klasa wykonuje wyszukiwania na serwerze katalogów przy użyciu stron z 512 wierszami na stronę, limity czasu są stosowane do każdej strony wyników pobranych przez klasęActiveDirectoryMembershipProvider. Jeśli na przykład zapytanie wyszukiwania zwróci 1000 wierszy danych, ActiveDirectoryMembershipProvider klasa pobierze te informacje jako dwie strony danych. Oznacza to, że limity czasu klienta i wyszukiwania zaczną liczyć od zera, gdy ActiveDirectoryMembershipProvider klasa żąda drugiej strony danych.

Wyniki zwracane przez metodę FindUsersByEmail są ograniczone przez pageIndex parametry i pageSize . Parametr pageSize określa maksymalną liczbę MembershipUser wystąpień, które mają być zwracane w obiekcie MembershipUserCollection. Parametr pageIndex określa, która strona wyników ma być zwracana, gdzie 0 (zero) wskazuje pierwszą stronę.

Parametr totalRecords jest parametrem ustawionym na łączną out liczbę pasujących użytkowników członkostwa znalezionych w magazynie danych usługi Active Directory. Jeśli na przykład dla skonfigurowanego magazynu danych istnieje 13 użytkowników, a pageIndex wartość to 1 z wartością pageSize 5, MembershipUserCollection zwrócona wartość będzie zawierać szósty do dziesiątego użytkownika. Parametr totalRecords zostanie ustawiony na wartość 13.

Możesz kontrolować, czy zezwalać na wyszukiwanie użytkowników, ustawiając EnableSearchMethods właściwość w pliku konfiguracji aplikacji przy użyciu enableSearchMethods atrybutu elementu członkostwa (ASP.NET Ustawienia Schemat). EnableSearchMethods Ustawienie właściwości powoduje, FindUsersByEmail że false metoda zgłasza NotSupportedException wyjątek.

Dostawca używa wyszukiwania poddrzewa rozpoczynającego się od punktu wyszukiwania określonego w parametrach połączenia. Zobacz temat klasy, ActiveDirectoryMembershipProvider aby uzyskać więcej informacji na temat parametrów połączenia.

Zalecamy, aby nie włączać wyszukiwania w systemach produkcyjnych, dopóki nie potwierdzisz, że zapytania wyszukiwania wydane przez ActiveDirectoryMembershipProvider klasę nie mają negatywnego wpływu na wydajność serwera katalogu. ActiveDirectoryMembershipProvider Ponieważ klasa jest przeznaczona dla bezstanowego środowiska internetowego, nie może używać optymalizacji stronicowania uwidocznionych przez bazowe System.DirectoryServices interfejsy API. Oznacza to, że operacje stronicowania podczas wyszukiwania w dużych katalogach są bardzo kosztowne i należy ich unikać. Operacje wyszukiwania są zawsze wystawiane względem serwera katalogów skonfigurowanego w parametrach połączenia lub automatycznie wybranego serwera w przypadku parametrów połączenia wskazujących domenę. Dostawca nie używa wykazu globalnego dla swoich metod wyszukiwania.

Dotyczy

Zobacz też