0

我想使用自定义成员资格提供程序创建一个新用户,但我不想使用创建的默认函数。

我不想用这个

Public Overrides Function CreateUser(ByVal username As String,
                                         ByVal password As String,
                                         ByVal email As String,
                                         ByVal passwordQuestion As String,
                                         ByVal passwordAnswer As String,
                                         ByVal isApproved As Boolean,
                                         ByVal providerUserKey As Object,
                                         ByRef status As System.Web.Security.MembershipCreateStatus) As System.Web.Security.MembershipUser
        Return Nothing
  End Function

相反,我想用这个

Public Overloads Function CreateUser(ByVal username As String,
                                         ByVal email As String,
                                         ByVal number As String,
                                         ByVal isApproved As Boolean,
                                          ByRef status As System.Web.Security.MembershipCreateStatus) As System.Web.Security.MembershipUser

所以当我使用第二个选项时,我得到这条波浪线说“对非共享成员的引用需要对象引用

我像这样正确引用了.dll

Imports CustomProviders

但是,当我尝试如下图所示创建用户时,它不起作用。我在做一些明显错误的事情。我不知道那是什么。

在此处输入图像描述

已解决:我发现波浪线是由于铸造问题造成的。我在引用类库成员时没有在我的网页代码后面转换方法。我认为另一个也被照顾了。

4

1 回答 1

0

嘿,您的代码有效(我可以编译) 我刚刚创建了一个新的会员提供程序并使用了您的 createuser 方法。它工作正常。

如果您只想发送更少的参数,为什么不使用可选参数功能,以便您的调用者仍然可以调用具有有限参数的方法。这样你会自动摆脱你的问题(我不确定是什么:)?)

http://msdn.microsoft.com/en-us/library/f25e2b6b(v=VS.100).aspx

于 2011-04-20T13:10:01.300 回答