我有一個(很難與客戶合作)的客戶在我們的網站上創建了一個帳戶,但是由於他尚未點擊帳戶激活鏈接,他無法登錄。由於某種原因,他不想點擊它(他認爲它的病毒)在asp.net中手動激活用戶帳戶
無論如何,我想手動設置帳戶激活通過數據庫..我該怎麼做? 謝謝!
(我的意思是,哪些領域需要改變什麼值?)
我有一個(很難與客戶合作)的客戶在我們的網站上創建了一個帳戶,但是由於他尚未點擊帳戶激活鏈接,他無法登錄。由於某種原因,他不想點擊它(他認爲它的病毒)在asp.net中手動激活用戶帳戶
無論如何,我想手動設置帳戶激活通過數據庫..我該怎麼做? 謝謝!
(我的意思是,哪些領域需要改變什麼值?)
你能不能臨時指定自己的地址到帳戶,然後重新發送激活網址是什麼?也許他可以轉發你的郵件,你可以點擊鏈接。認爲這比「侵入」會員提供商的方式容易。
還要求你的客戶啞巴不是處理你的客戶一個很好的辦法;)
看起來不錯,但是,我們的網站不提供重新發送激活鏈接的方法! – iamserious 2010-06-30 09:23:26
讓他轉發你的郵件:)否則,嘗試找出激活URL是如何創建的。也許URL(或其部分)存儲在數據庫中,您可以「重新創建」他的URL。 – Gertjan 2010-06-30 09:26:04
我們正在使用aspnet成員資格功能..所以激活鏈接將從GUID創建,因此重新創建它的機率幾乎非常非常罕見。 – iamserious 2010-06-30 09:30:17
我做了周圍的ASPNET成員表中的一些fiddeling,發現如何手動激活賬號!
update aspnetdb.dbo.aspnet_Membership set IsApproved = 1 where UserId = (select UserId From aspnetdb.dbo.aspnet_Users where UserName = @Username)
userid是可笑的長,所以我發現它更容易從用戶名錶中提取它的用戶名。
在您的MembershipProvider上調用這兩個方法。
Membership.GetUser().UnlockUser();
Membership.GetUser().IsApproved = true;
我想在數據庫級別執行此操作,可以在單擊鏈接並且用戶登錄頁面後調用這些方法..但是我的這個用戶拒絕單擊鏈接,因此我必須操作數據庫中的列,但是謝謝:) – iamserious 2010-06-30 09:50:58
你也可以通過傳遞用戶名來調用它。無需直接觸摸數據庫。 'Membership.GetUser(「username」)。UnlockUser();' – 2010-06-30 10:01:31
hmm但爲此我仍然需要在一些臨時頁面中編寫代碼並編譯整個項目,並將dll和必要的頁面轉移到專用服務器並運行它,然後恢復它的權利?很多工作只是一次的事情!但可能是如果我有更多像這樣的客戶,我將在未來將其作爲「僅管理員」的東西進行整合。感謝您的創意! – iamserious 2010-06-30 10:50:56
最近我有同樣的問題,我發現,當你正在做Membership.CreateUser
叫你可以把它的用戶作爲真正的自動創建通過插入這樣的:
Membership.CreateUser(userName, Password, eMail, passwordQuestion, passwordAnswer, isApproved)
的isApproved
是一個布爾值,當您調用創建用戶時可以設置爲true。
(他認爲它的病毒) - 大聲笑! – Krunal 2010-06-30 09:21:03