共用方式為


ActiveDirectoryMembershipProvider.FindUsersByEmail 方法

定義

根據使用者的電子郵件地址從 Active Directory 資料存放區傳回成員資格使用者的集合。

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

參數

emailToMatch
String

要搜尋的電子郵件地址或電子郵件地址的一部分。

pageIndex
Int32

要傳回的結果網頁索引。 pageIndex 以零為起始。

pageSize
Int32

要傳回的結果網頁大小。

totalRecords
Int32

這個方法返回時,會包含集合中傳回之使用者的總數。 這個參數會以未初始化的狀態傳遞。

傳回

MembershipUserCollection,包含 pageSizeMembershipUser 執行個體,從 pageIndex 指定的頁面開始。

例外狀況

emailToMatch 是空的。

-或-

emailToMatch 超過 256 個字元。

-或-

pageIndex 小於 0。

-或-

pageSize 小於 1。

-或-

pageSize 乘以 pageIndex、加上 pageSize、減 1 大於 Int32.MaxValue

備註

方法 FindUsersByEmail 會取得 , MembershipUserCollection 其中包含 Active Directory 存放區中符合 emailToMatch 參數的用戶記錄。 用戶記錄會依電子郵件位址以遞增順序傳回。

參數 emailToMatch 限制為 256 個字元。

類別 ActiveDirectoryMembershipProvider 會使用 clientSearchTimeoutserverSearchTimeout 組態值發出搜尋。 由於類別 ActiveDirectoryMembershipProvider 會使用每頁 512 個數據列的頁面,對目錄伺服器執行搜尋,因此逾時會套用至 類別所 ActiveDirectoryMembershipProvider 擷取的每個結果頁面。 例如,如果搜尋查詢產生1,000個數據列的數據,則 ActiveDirectoryMembershipProvider 類別會將此資訊擷取為兩頁的數據。 這表示當類別要求第二頁數據時 ActiveDirectoryMembershipProvider ,客戶端和搜尋逾時會從零開始計算。

方法傳 FindUsersByEmail 回的結果會受到 pageIndexpageSize 參數的限制。 參數pageSize會指定要在 中MembershipUserCollection傳回的MembershipUser實例數目上限。 參數 pageIndex 會指定要傳回的結果頁面,其中0 (零) 表示第一頁。

參數 totalRecords 是一個 out 參數,設定為 Active Directory 資料存放區中找到的相符成員資格用戶總數。 例如,如果已設定的數據存放區有13個使用者,且 pageIndex 值為1 pageSize 且值為5,則傳回的 MembershipUserCollection 會包含第六到第十個使用者。 參數 totalRecords 會設定為 13。

您可以控制是否允許搜尋使用者,方法是在enableSearchMethods應用程式的組態檔中使用成員資格元素的 屬性來設定 EnableSearchMethods 屬性, (ASP.NET 設定架構) 元素。 EnableSearchMethods將屬性設定為 false 會導致 FindUsersByEmail 方法擲回例外狀況NotSupportedException

提供者會使用從連接字串中指定的搜尋點開始的子樹搜尋。 ActiveDirectoryMembershipProvider如需連接字串的詳細資訊,請參閱 類別主題。

建議您在確認 類別發出的 ActiveDirectoryMembershipProvider 搜尋查詢不會對目錄伺服器的效能造成負面影響之前,才啟用在生產系統上搜尋。 由於 類別 ActiveDirectoryMembershipProvider 是針對無狀態 Web 環境所設計,因此無法使用基礎 System.DirectoryServices API 所公開的分頁優化。 這表示在搜尋大型目錄期間的分頁作業非常昂貴,因此應該避免。 搜尋作業一律會針對連接字串中設定的目錄伺服器發出,或在指向網域的連接字串的情況下自動選取的伺服器發出。 提供者不會針對其搜尋方法使用全域編錄。

適用於

另請參閱