ActiveDirectoryMembershipProvider.FindUsersByEmail Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Restituisce una raccolta di utenti di appartenenza dall'archivio dati di Active Directory in base all'indirizzo di posta elettronica dell'utente.
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
Parametri
- emailToMatch
- String
Indirizzo di posta elettronica o parte dell'indirizzo di posta elettronica da cercare.
- pageIndex
- Int32
Indice della pagina dei risultati da restituire.
pageIndex è in base zero.
- pageSize
- Int32
Dimensioni della pagina dei risultati da restituire.
- totalRecords
- Int32
Quando termina, questo metodo contiene il numero totale di utenti restituiti nella raccolta. Questo parametro viene passato non inizializzato.
Restituisce
Oggetto MembershipUserCollection contenente pageSizeMembershipUser le istanze che iniziano nella pagina specificata da pageIndex.
Eccezioni
Il metodo viene chiamato prima dell'inizializzazione FindUsersByEmail(String, Int32, Int32, Int32) dell'istanza ActiveDirectoryMembershipProvider .
emailToMatch è vuoto.
oppure
emailToMatch supera i 256 caratteri.
oppure
pageIndex è minore di 0.
oppure
pageSize è minore di 1.
oppure
pageSize moltiplicato per pageIndex, più pageSize, meno 1 è maggiore di Int32.MaxValue.
La EnableSearchMethods proprietà è false.
Commenti
Il FindUsersByEmail metodo ottiene un oggetto MembershipUserCollection contenente i record utente dall'archivio di Active Directory che corrispondono ai emailToMatch parametri. I record utente vengono restituiti ordinati in ordine crescente in base all'indirizzo di posta elettronica.
Il emailToMatch parametro è limitato a 256 caratteri.
La ActiveDirectoryMembershipProvider classe eseguirà la ricerca usando i valori di clientSearchTimeout configurazione e serverSearchTimeout . Poiché la ActiveDirectoryMembershipProvider classe esegue ricerche sul server di directory usando pagine con 512 righe per pagina, i timeout si applicano a ogni pagina dei risultati recuperati dalla ActiveDirectoryMembershipProvider classe . Ad esempio, se una query di ricerca restituisce 1.000 righe di dati, la ActiveDirectoryMembershipProvider classe recupererà queste informazioni come due pagine di dati. Ciò significa che il client e i timeout di ricerca inizieranno a contare da zero quando la classe richiede la ActiveDirectoryMembershipProvider seconda pagina di dati.
I risultati restituiti dal FindUsersByEmail metodo sono vincolati dai pageIndex parametri e pageSize . Il pageSize parametro specifica il numero massimo di MembershipUser istanze da restituire in MembershipUserCollection. Il pageIndex parametro specifica la pagina dei risultati da restituire, dove 0 (zero) indica la prima pagina.
Il totalRecords parametro è un out parametro impostato sul numero totale di utenti di appartenenza corrispondenti trovati nell'archivio dati di Active Directory. Ad esempio, se sono presenti 13 utenti per l'archivio dati configurato e il pageIndex valore è 1 con un pageSize valore pari a 5, il MembershipUserCollection valore restituito conterrà il sesto al decimo utente. Il totalRecords parametro verrà impostato su 13.
È possibile controllare se consentire la ricerca di utenti impostando la EnableSearchMethods proprietà nel file di configurazione dell'applicazione usando l'attributo dell'elemento enableSearchMethodsmembership Element (ASP.NET Settings Schema). L'impostazione della EnableSearchMethods proprietà su false fa sì che il FindUsersByEmail metodo generi un'eccezione NotSupportedException .
Il provider usa una ricerca sottoalbero a partire dal punto di ricerca specificato nella stringa di connessione. Per altre informazioni sulle stringhe di connessione, vedere l'argomento ActiveDirectoryMembershipProvider relativo alla classe.
È consigliabile non abilitare la ricerca nei sistemi di produzione finché non si è verificato che le query di ricerca eseguite dalla ActiveDirectoryMembershipProvider classe non influiscono negativamente sulle prestazioni del server directory. Poiché la ActiveDirectoryMembershipProvider classe è progettata per un ambiente Web senza stato, non è in grado di usare le ottimizzazioni di paging esposte dalle API sottostanti System.DirectoryServices . Ciò significa che le operazioni di paging durante le ricerche su directory di grandi dimensioni sono molto costose e devono essere evitate. Le operazioni di ricerca vengono sempre eseguite sul server di directory configurato nella stringa di connessione o su un server selezionato automaticamente nel caso di una stringa di connessione che punta a un dominio. Il provider non usa un catalogo globale per i metodi di ricerca.