如何使用mvc4和simplememmembership更改用户名

本文关键字:用户 simplememmembership 何使用 mvc4 | 更新日期: 2023-09-27 18:03:25

为什么不能更改simplememmembership用户名?我试着

MembershipUser memUser = Membership.GetUser(existingUser);
memUser.UserName = model.UserName;
Membership.UpdateUser(memUser);

我得到了MembershipUser。UserName为只读。没有其他方法可以更改用户名。

有办法解决这个问题吗?

编辑:新问题。当

 var confirmationToken = WebSecurity.CreateUserAndAccount(model.UserName, Request["Password"], new { NameFirst = model.NameFirst, NameLast = model.NameLast, ContactId = newContact.ContactId },true);

运行时,我得到一个MembershipCreateUserException并说用户名已经在使用中(它真的不是)。它设法将用户添加到我的UserSecurity表(UserProfile),但没有将其添加到成员表。它试图在webpages_Membership表中添加用户,而不是在我创建的UserMembership表中添加用户。

如何使用mvc4和simplememmembership更改用户名

您可能无法使用MembershipProvider编辑用户名。在simplemember中,您必须向您的模型添加一个UserProfile表,其中存储了用户名。

初始化时指定表:

WebSecurity.InitializeDatabaseConnection("DBname", "UserProfileTable", "IdColumn", "UsernameColumn", autoCreateTables: true);