ActiveDirectoryMembershipProvider.GetUserNameByEmail(String) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得與所指定電子郵件地址建立關聯的使用者名稱。
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
參數
- String
要搜尋的電子郵件地址。
傳回
與所指定電子郵件地址建立關聯的使用者名稱。
例外狀況
資料存放區中的多位使用者有相同的電子郵件地址,且 RequiresUniqueEmail 屬性值為 true
。
提供者未初始化。
備註
類別會呼叫 Membership 這個方法,根據使用者的電子郵件位址,從 Active Directory 數據存放區擷取用戶名稱。
如果成員資格數據存放區中的多個使用者具有相同的電子郵件位址,則會傳回遇到的第一個用戶名稱。 您可以在 requiresUniqueEmail
應用程式組態檔中將 membership Element 的 屬性設定為 (ASP.NET Settings Schema) 元素 true
,以確保資料庫中的每個電子郵件位址都是唯一的。
會修剪 email
參數值中的前置空格和後端空格。 如果電子郵件地址在修剪之後是空的, ArgumentException 則會擲回 。 如果電子郵件位址是 null
,則會搜尋 Active Directory 資料存放區中的所有用戶名稱,並傳回第一個用戶名稱。
建議您在確認 類別發出的 ActiveDirectoryMembershipProvider 搜尋查詢不會對目錄伺服器的效能造成負面影響之前,才啟用在生產系統上搜尋。
重要
即使 屬性為 false
,EnableSearchMethods方法GetUserNameByEmail仍會執行。
由於 類別 ActiveDirectoryMembershipProvider 是針對無狀態 Web 環境所設計,因此無法使用基礎 System.DirectoryServices API 所公開的分頁優化。 這表示在搜尋大型目錄期間的分頁作業非常昂貴,因此應該避免。 搜尋作業一律會針對連接字串中設定的目錄伺服器發出,或在指向網域的連接字串的情況下自動選取的伺服器發出。 提供者不會針對其搜尋方法使用全域編錄。
提供者會使用從連接字串中指定的搜尋點開始的子樹搜尋。 ActiveDirectoryMembershipProvider如需連接字串的詳細資訊,請參閱 類別主題。