如何删除asp.net中的用户帐户?

问题描述:

我有一个注册页面,我用下面的Walkthrough: Creating a Web Site with Membership and User Login来制作我的网页。问题是注册页面创建用户,但我无法知道如何从数据库中删除用户帐户并将其存储。如何删除asp.net中的用户帐户?

成员资格提供者有一个DeleteUser方法。

http://msdn.microsoft.com/en-us/library/w6b0zxdw.aspx

下面的作品一样好:

Membership.DeleteUser("username");


如果你想要一个基于SQL的解决方案:

http://web.archive.org/web/20130407080036/http://blogs.rawsoft.nl/remco/post/2009/02/05/How-to-Remove-users-from-the-ASPNet-membership-database.aspx

+0

是否有可能创建用户处于禁用状态,直到管理员允许用户权限使用帐户? – 2012-03-08 15:42:05

+1

Membership.CreateUser()方法有一个名为IsApproved的参数。你可以使用它。 – Kaf 2012-03-08 15:46:29

+1

@Chris Lively基于SQL的解决方案链接似乎已停用:http://www.isitdownrightnow.com/blogs.rawsoft.nl.html – Marcel 2014-01-17 12:54:25

您的项目(视觉小号tudio)顶层菜单>网站> ASP.NET配置(请点击此)

这将打开配置,然后安全>管理用户 你需要有什么...

+0

他可能想在他自己的网站做这个 – 2012-03-08 15:39:44

+0

我想这样做,我没有看到'管理用户',我看到'管理访问规则' – 2012-03-08 15:43:32

+0

在安全选项卡下,您可以得到三个框(用户,角色,访问规则)。管理用户在用户框中。我在看VS2010你可能会有所不同,但它在那里。看看标签可能会有所不同... – Kaf 2012-03-08 15:49:20

当创建一个网站,将有一个会员管理用户和角色,创建网站内的管理/技术支持网页,这将是唯一可见的,均可使用执行诸如角色:

  • 删除用户
  • 重置密码
  • 其他用户管理

它会派上用场的时候,你必须支持你的最终用户,他们将要面对的问题。

Membership info from MSDN

+0

我正在努力做到你所说的。问题是我仍然无法弄清楚如何删除一个成员。我使用gridview来显示所有成员,并使用自动添加的删除功能。我想使用存储过程或代码背后的方法,但我可以找到的唯一示例是Membership.DeleteUser(“username”);我无法为我工作。你有什么建议吗? – 2016-06-06 15:48:10

下面是使用SQL删除用户一个简单的方法。

USE ASPNet 
GO 

DECLARE @UserId uniqueidentifier 
SET @UserId = 'THE GUID OF THE USER HERE' 

DELETE FROM aspnet_Profile WHERE UserID = @UserId 
DELETE FROM aspnet_UsersInRoles WHERE UserID = @UserId 
DELETE FROM aspnet_PersonalizationPerUser WHERE UserID = @UserId 
DELETE FROM dbo.aspnet_Membership WHERE UserID = @UserId 
DELETE FROM aspnet_users WHERE UserID = @UserId 

为了完整起见,这里类似于阿拉法特的一个解决方案,但是,在使用GUID的用户名,而不是作为OP已经要求:

DECLARE @UserId uniqueidentifier 
SET @UserId = (SELECT TOP(1) UserID FROM aspnet_Users 
    WHERE UserName = 'THE USERNAME OF THE USER HERE') 

DELETE FROM aspnet_Profile WHERE UserID = @UserId 
DELETE FROM aspnet_UsersInRoles WHERE UserID = @UserId 
DELETE FROM aspnet_PersonalizationPerUser WHERE UserID = @UserId 
DELETE FROM dbo.aspnet_Membership WHERE UserID = @UserId 
DELETE FROM aspnet_users WHERE UserID = @UserId 

注:基本SQL脚本采取从this blog by Tim Gaunt