GUID以编程方式创建DNN用户时插入为用户名



我已经编写了通过以下代码以编程方式创建DNN用户的代码,但它正在插入像这样的用户名50c5c87e-bba7-4fc8-b2b4-1d9e3e388dc5-contracthiring@outlook.com。它看起来像是合并GUID+电子邮件地址。但它应该是li_ + FirstName + LastName,因为我通过下面的代码动态创建。

我在&在底线之前。这看起来很奇怪。下面是我的输出。

'Response.Write("objUserInfo Before: " & objUserInfo.Username)
objUserCreateStatus = objMembershipProvider.CreateUser(objUserInfo)
'Response.Write("objUserInfo: " & objUserInfo.Username) 

用户名输出:

之前:li_Andrea Simon

之后:50c5c87e-bba7-4fc8-b2b4-1d9e3e388dc5-contracthiring@outlook.com

我的代码:

Try
                    If MySettings("LinkedinUserNamePrefix") <> "" Then
                        fsUsername = MySettings("LinkedinUserNamePrefix") & objPerson.Firstname & " " & objPerson.Lastname
                    Else
                        fsUsername = objPerson.Firstname & " " & objPerson.Lastname
                    End If
                Catch
                End Try
         'Register user to the site
        Dim objUserInfo As New DotNetNuke.Entities.Users.UserInfo
        objUserInfo.PortalID = Me.PortalId
        objUserInfo.Username = fsUsername
        objUserInfo.FirstName = fName
        objUserInfo.LastName = lName
        objUserInfo.Email = EmailAdd
        objUserInfo.DisplayName = fsUsername
        objUserInfo.Membership.Username = fsUsername
        objUserInfo.Membership.Email = EmailAdd
        objUserInfo.Membership.Password = fsUsername
        ' User Profile
        objUserInfo.Profile.PreferredLocale = PortalSettings.DefaultLanguage
        objUserInfo.Profile.FirstName = fName
        objUserInfo.Profile.LastName = lName
        'Set Membership
        objUserInfo.Membership.Approved = True
        'Bind membership to user
        objUserInfo.IsSuperUser = False
        Dim objUserCreateStatus As UserCreateStatus = UserCreateStatus.AddUser
        Dim objMembershipProvider As DotNetNuke.Security.Membership.MembershipProvider = DotNetNuke.Security.Membership.MembershipProvider.Instance()
        'Response.Write("objUserInfo Before: " & objUserInfo.Username)
        objUserCreateStatus = objMembershipProvider.CreateUser(objUserInfo)
        'Response.Write("objUserInfo: " & objUserInfo.Username)

CreateUser方法中的问题是什么。这是DNN库中的问题吗。

我使用DNN 07.04.00。

如果选中,请尝试取消选中"Admin settings"下的"Use Email Address as Username"。

最新更新