GUID Вставка в качестве имени пользователя при создании пользователя DNN программно
Я написал код для создания пользователя DNN программно, следуя коду, но он вставляет имя пользователя, как это 50c5c87e-bba7-4fc8-b2b4-1d9e3e388dc5-contracthiring@outlook.com
, Это выглядит как объединение GUID + EmailAddress. Но это должно быть 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.
1 ответ
Попробуйте снять флажок "Использовать адрес электронной почты как имя пользователя" в настройках администратора, если установлен этот флажок.