用注册用户的控件,怎样才能控制申请人申请用户名的长度?还有我不想让他输入带有特殊字符的帐号?该怎么做?

解决方案 »

  1.   

    用注册用户的控件,怎样才能控制申请人申请用户名的长度?还有我不想让他输入带有特殊字符的帐号?该怎么做?
    ==
    第一种方式:可以Web.config在<system.web><membership>节下的<providers>是否提供了相应的属性
    我这里没有环境,无法测试..第二中方式:自己使用MemberShip的API来创建,也就是不使用注册控件,这样更利于控制
    前台页面自己设计,后台大致是protected void btnRegister_Click(object sender, EventArgs e)
    {
        lblMessage.Text = string.Empty;
        string userName = txtUserName.Text;
        string password = txtPassword.Text;
        string email = txtEmail.Text;
        string passwordQuestion = ddlPasswordQuestion.SelectedValue;
        string passwordAnswer = txtPasswordAnswer.Text;    MembershipCreateStatus result;
        MembershipUser newUser = Membership.CreateUser(userName, password, email, passwordQuestion, passwordAnswer, true, out result);    switch (result)
        {
            case MembershipCreateStatus.Success:
                txtUserName.Text = string.Empty;
                txtPassword.Text = string.Empty;
                txtEmail.Text = string.Empty;
                ddlPasswordQuestion.SelectedIndex = -1;
                txtPasswordAnswer.Text = string.Empty;
                lblMessage.Text = "成功创建用户!";
                Response.Redirect("~/Login.aspx");
                break;
            case ...
        }
      

  2.   

    [code=XAML]<membership defaultProvider="AspNetShopProvider" userIsOnlineTimeWindow="20">
          <providers>
            <add name="AspNetShopProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="AspNetShopDB" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" requiresUniqueEmail="true" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="1" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"/>
          </providers>
        </membership>[/code]
    其中minRequiredNonalphanumericCharacters="0"是设置有效密码中必须包含的最少特殊字符数
      

  3.   

    还有我不想让他输入带有特殊字符的帐号?
    ===
    minRequiredNonalphanumericCharacters="0"
    控制申请人申请用户名的长度?
    ===
    可以用验证控件
      

  4.   

    在MSDN中的membershipprovider中有详细的介绍
    还有minRequiredNonalphanumericCharacters是设置密码中最少特殊字符的数量,看清楚了!!
      

  5.   

    minRequiredNonalphanumericCharacters="0" 设置密码的特殊字符
    minRequiredPasswordLength:密码所要求的最小长度
    maxInvalidPasswordAttempts:锁定成员资格用户前允许的无效密码或无效密码提示问题答案尝试次数
      

  6.   

    thx a lot~其实发过贴之后就看到了可以自定义模板的 还是非常感谢大家!!!