爲此overload:爲什麼Membership.CreateUser失敗?
如果CreateUser("[email protected]","pwd")
,失敗並顯示錯誤消息:提供的電子郵件地址無效。請檢查該值並重試。
但CreateUser("[email protected]","pwd","[email protected]")
,成功!
爲什麼?
爲此overload:爲什麼Membership.CreateUser失敗?
如果CreateUser("[email protected]","pwd")
,失敗並顯示錯誤消息:提供的電子郵件地址無效。請檢查該值並重試。
但CreateUser("[email protected]","pwd","[email protected]")
,成功!
爲什麼?
它可能會更好想到這樣的方法:
CreateUser(Username, Password);
CreateUser(Username, Password, Email);
而不反映代碼我不能肯定地說100%,但我敢打賭,這些功能只是調用內部函數接受每個可能的參數。
所以你的第一個電話(簡體)居然是:
CreateUser("[email protected]", "pwd", null);
如果已經配置了您的提供商需要電子郵件地址,那麼顯然null
無效。
的SqlMembershipProvider的提供需要唯一 電子郵件地址爲每個用戶提供一個選項。 如果RequiresUniqueEmail屬性爲 真的,你將需要使用CREATEUSER重載之一,它允許您 爲正在創建的用戶指定的E-mail地址。 否則,會引發MembershipCreateUserException。
謝謝,喬希。感謝反射器!哈哈 – dfang
更新您的web.config成員資格部分設置...您需要更改... –
在已發佈的文檔鏈接的「備註」下:'...如果RequiresUniqueEmail屬性爲true,那麼您將需要使用CreateUser重載之一,它允許您爲正在創建的用戶指定一個電子郵件地址。否則,會拋出MembershipCreateUserException異常' – Equiso