无法创建用户

时间:2013-01-11 10:06:37

标签: c# asp.net

我使用ASP.NET Membership类来创建用户凭据和管理用户设置。代码如下:它在我的本地机器上工作正常,但它在生产服务器上抛出一个异常。可能是什么原因?能给我一个线索吗?任何人吗?


try
{                
    MembershipUser newUser = 
        Membership.CreateUser(txtUserName.Text, txtPassword.Text);
}
catch (MembershipCreateUserException ex)
{
    divErrorPanel1.Visible = true;
    ShowErrorMessage(lblMessage, GetErrorMessage(ex.StatusCode));
    return;
}

3 个答案:

答案 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)

在web.config中

,尝试将以下属性设置为false

requiresQuestionAndAnswer="false"
节点

中的