共用方式為


ActiveDirectoryMembershipProvider.GetUserNameByEmail(String) 方法

定義

取得與所指定電子郵件地址建立關聯的使用者名稱。

public:
 override System::String ^ GetUserNameByEmail(System::String ^ email);
public override string GetUserNameByEmail (string email);
override this.GetUserNameByEmail : string -> string
Public Overrides Function GetUserNameByEmail (email As String) As String

參數

email
String

要搜尋的電子郵件地址。

傳回

與所指定電子郵件地址建立關聯的使用者名稱。

例外狀況

email 超過 256 個字元

-或-

修剪後 email 是空的。

資料存放區中的多位使用者有相同的電子郵件地址,且 RequiresUniqueEmail 屬性值為 true

提供者未初始化。

備註

類別會呼叫 Membership 這個方法,根據使用者的電子郵件位址,從 Active Directory 數據存放區擷取用戶名稱。

如果成員資格數據存放區中的多個使用者具有相同的電子郵件位址,則會傳回遇到的第一個用戶名稱。 您可以在 requiresUniqueEmail 應用程式組態檔中將 membership Element 的 屬性設定為 (ASP.NET Settings Schema) 元素 true ,以確保資料庫中的每個電子郵件位址都是唯一的。

會修剪 email 參數值中的前置空格和後端空格。 如果電子郵件地址在修剪之後是空的, ArgumentException 則會擲回 。 如果電子郵件位址是 null,則會搜尋 Active Directory 資料存放區中的所有用戶名稱,並傳回第一個用戶名稱。

建議您在確認 類別發出的 ActiveDirectoryMembershipProvider 搜尋查詢不會對目錄伺服器的效能造成負面影響之前,才啟用在生產系統上搜尋。

重要

即使 屬性為 falseEnableSearchMethods方法GetUserNameByEmail仍會執行。

由於 類別 ActiveDirectoryMembershipProvider 是針對無狀態 Web 環境所設計,因此無法使用基礎 System.DirectoryServices API 所公開的分頁優化。 這表示在搜尋大型目錄期間的分頁作業非常昂貴,因此應該避免。 搜尋作業一律會針對連接字串中設定的目錄伺服器發出,或在指向網域的連接字串的情況下自動選取的伺服器發出。 提供者不會針對其搜尋方法使用全域編錄。

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

適用於

另請參閱