我有一个(很难与客户合作)的客户在我们的网站上创建了一个帐户,但是由于他尚未点击帐户激活链接,他无法登录。由于某种原因,他不想点击它(他认为它的病毒)在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