我使用ASP.NET Membership类来创建用户凭据和管理用户设置。代码如下:它在我的本地机器上工作正常,但它在生产服务器上抛出一个异常。可能是什么原因?能给我一个线索吗?任何人吗?
try
{
MembershipUser newUser =
Membership.CreateUser(txtUserName.Text, txtPassword.Text);
}
catch (MembershipCreateUserException ex)
{
divErrorPanel1.Visible = true;
ShowErrorMessage(lblMessage, GetErrorMessage(ex.StatusCode));
return;
}
答案 0 :(得分:0)
检查MembershipCreateUserException.StatusCode
属性以解释异常。
获取异常原因的描述。
这些是可能性。
“用户名已存在。请输入其他用户名。”;
“该电子邮件地址的用户名已存在。请输入其他电子邮件地址。”;
“提供的密码无效。请输入有效的密码值。”;
“提供的电子邮件地址无效。请检查该值,然后重试。”;
“提供的密码检索答案无效。请检查该值,然后重试。”;
“提供的密码检索问题无效。请检查该值,然后重试。”;
“提供的用户名无效。请检查该值并重试。”;
“身份验证提供程序返回错误。请验证您的输入并重试。如果问题仍然存在,请与您联系 系统管理员。“;
“用户创建请求已取消。请验证您的输入并重试。如果问题仍然存在,请与您联系 系统管理员。“;
“发生了未知错误。请验证您的输入并重试。如果问题仍然存在,请与您的系统管理员联系。”;
答案 1 :(得分:0)
尝试重载方法
MembershipCreateStatus status;
MembershipUser newuser = Membership.CreateUser(username, password, email,
"Give default question as empty", "Give default answer as empty", IsApprovedTrueOrFalse, out status);
您正在使用的当前超载也从未对我有效。我不知道为什么我被迫使用这个重载。可能与web.config中的某些设置有关,是否需要一些字段。
答案 2 :(得分:0)
,尝试将以下属性设置为false
requiresQuestionAndAnswer="false"
节点中的