【问题标题】:Change Mapping of fields of CreateUserWizard control with membership provider asp.net 4.0使用成员资格提供程序 asp.net 4.0 更改 CreateUserWizard 控件的字段映射
【发布时间】:2012-04-22 13:12:35
【问题描述】:
我在 asp.net 4.0 中将 CreateUserWizard Control 与会员提供程序一起使用。
在这种情况下,用户名存储在 aspnet_Users 表的“用户名”字段中。
我想在 aspnet_Membership 表的电子邮件字段中保存“用户名”字段(在我的情况下,用户名也是电子邮件);
换句话说,我想更改这些字段的映射。
我该怎么做?
注意:我的问题是如何更改映射。以上是唯一的例子
【问题讨论】:
标签:
asp.net
membership
login-control
【解决方案1】:
您可以通过调用 CreateUser 方法而不是使用 CreateUserWizard 轻松实现。
<asp:TextBox ID="EmailTextBox" runat="Server" />
<asp:TextBox ID="PasswordTextBox" runat="Server" />
<asp:TextBox ID="PasswordQuestionTextBox" runat="Server" />
<asp:TextBox ID="PasswordAnswerTextBox" runat="Server" />
string username = EmailTextBox.text; // Same as email
string password = PasswordTextBox.text;
string email = EmailTextBox.text;
string passwordQuestion = PasswordQuestionTextBox.text;
string passwordAnswer = PasswordAnswerTextBox.text;
bool isApproved = true;
MembershipCreateStatus status;
MembershipUser membershipUser = System.Web.Security.Membership.CreateUser(username, password, email, passwordQuestion, passwordAnswer, isApproved, out status);
if (status != MembershipCreateStatus.Success)
throw new Exception(status.ToString());