使用成员资格提供程序asp.net 4.0更改CreateUserWizard控件的字段映射

时间:2012-04-22 13:12:35

标签: asp.net membership login-control

我在asp.net 4.0中使用CreateUserWizard Control和成员资格提供程序。

在这种情况下,用户名存储在aspnet_Users表中的“用户名”字段中。

我想在aspnet_Membership表的电子邮件字段中保存“用户名”字段(在我的情况下,用户名也是电子邮件); 换句话说,我想更改这些字段的映射。

我该怎么做?

注意:我的问题是如何更改映射。以上是唯一的例子

1 个答案:

答案 0 :(得分:0)

您可以通过调用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());