代码之家  ›  专栏  ›  技术社区  ›  Sunny

在C#后端检查正则表达式验证程序的验证

  •  1
  • Sunny  · 技术社区  · 11 年前
    protected void UserId_TextBox_TextChanged(object sender, EventArgs e)
    {
        SqlDataAdapter da = new SqlDataAdapter("select user_id from Userinfo where user_id='" + UserId_TextBox.Text + "@femail.com'", con);
        DataTable dt = new DataTable();
        da.Fill(dt);
        if (dt.Rows.Count > 0)
        {
            UserId_Label.Text = "Someone already has that username, try another?";
        }
        else 
        {
            UserId_Label.Text = "Wow , its a unique username! please fill in the remaining fields of the form";
        }
    

    这是我用来检查用户是否已经存在的一段代码,我想在控件转到循环的其他部分之前检查我强加在文本框上的正则表达式验证器是否经过验证。。。有人能在这里帮忙吗。(我可以在else部分之前使用else-if语句,并检查正则表达式是否已通过某种方法验证吗?)

    提前谢谢。

    3 回复  |  直到 8 年前
        1
  •  2
  •   Dennis de Jong    11 年前

    您可以使用ifelse在else上验证文本框正则表达式验证

     if(dt.Rows.Count > 0)
    {
        UserId_Label.Text = "Someone already has that username, try another?";
    }
    elseif(!Page.IsValid)
    {
        // Do what needs to be done when not valid
        UserId_Label.Text = "Invalid username input";
    }
    else
    {
        UserId_Label.Text = "Wow , its a unique username! please fill in the remaining fields of the form";
    }
    
        2
  •  1
  •   Karl Anderson    11 年前

    使用 Page.IsValid 以确定是否所有验证器都在通过,如下所示:

    else 
    {
        if(Page.IsValid)
        {
            UserId_Label.Text = "Wow , its a unique username! please fill in the remaining fields of the form";
        }
        else
        {
            // Do something here, because validation failed
        }
    }
    
        3
  •  0
  •   Incredible    11 年前

    通过Page.IsValid有一种方法:

    if (Page.IsValid && Regex.IsMatch(stringtomatch,@"RegularExpression")
    {
    }