从asp.net删除重复的用户

时间:2014-11-06 20:37:50

标签: asp.net vb.net asp.net-membership

出于某种原因,用户每隔一段时间就会在我的asp.net网络应用程序中重复注册。我不知道为什么(用户名设置为唯一),但它以某种方式通过,我最终得到两个确切的用户,除了自动创建的UserId。我可以使用Membership.DeleteUser(User.Identity.Name)的用户名轻松删除用户,但我不希望两者都被删除。我只想要复制品。我可以获取UserId(36位,也许它是一个哈希?)没问题,但是如何通过UserId删除用户?我没有看到任何有关UserId删除方法的内容。或者,是否可以以其他方式删除副本(如获取用户名的第二条记录)?

作为一个附带问题,当我将所有内容设置为不允许时,可能导致重复的是 - 表单可能是两次提交,但是不应该识别重复的用户名?

这是我的注册页面(使用内置注册向导)

 Public Class Register
Inherits Page

Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
    RegisterUser.ContinueDestinationPageUrl = Request.QueryString("ReturnUrl")
End Sub

Protected Sub RegisterUser_CreatedUser(ByVal sender As Object, ByVal e As EventArgs) Handles RegisterUser.CreatedUser
    FormsAuthentication.SetAuthCookie(RegisterUser.UserName, createPersistentCookie:=False)


    Dim continueUrl As String = RegisterUser.ContinueDestinationPageUrl
    If Not OpenAuth.IsLocalUrl(continueUrl) Then
        continueUrl = "~/"
    End If

    Response.Redirect(continueUrl)
End Sub

0 个答案:

没有答案