客户验证ASP.Net C#

时间:2011-07-12 23:25:28

标签: c# asp.net

我和这个论坛中的其他人有同样的问题。我的验证控制没有解雇......而且不确定我哪里出错了。有人可以看看,让我知道我在这里有什么明显的错误...谢谢

我使用以下内容在我的aspx页面中设置了一个客户验证器:

       <asp:TextBox ID="EmployeeNumber2TextBox" runat="server"
 Text='<%# Bind("EmployeeNumber") %>'Visible='<%# AllowEmployeeNumberEdit() %>' />

           <asp:CustomValidator ID="ValidateEmpNumber" runat="server" 
onservervalidate="ValidateEmpNumber_ServerValidate" 
    controltovalidate="EmployeeNumber2TextBox" 
    ErrorMessage="You Must Enter an Employee Number" Text="*" />

和背后的代码:

  protected void ValidateEmpNumber_ServerValidate(object sender, System.Web.UI.WebControls.ServerValidateEventArgs e)
  {
      int SiteCompanyID = System.Convert.ToInt32(Session["SiteCompanyID"]);
      SiteCompanyBLL SiteCompany = new SiteCompanyBLL();
      SiteCompanyDAL.SiteCompanyRow ScRow = SiteCompany.GetCompanyByID(SiteCompanyID);
      bool AutoGenerate = ScRow.AutoGenNumber;  // result returning true or false
      if (AutoGenerate == false)
      {
          if (e.Value.Length == 0)
          e.IsValid = false;
      else
          e.IsValid = false;
      }
  }

2 个答案:

答案 0 :(得分:0)

验证器是否与正在进行提交/回发的控件同步?此外,没有条件允许它true

你怎么知道它没有开火?

答案 1 :(得分:0)

您是否尝试使用每个单词大写的第一个字母创建OnServerValidate和ControlToValidate?这些属性可能区分大小写。

我能够在我的系统上运行代码的缩减版本。

您确定您的Web.config设置为编译调试吗?:

&lt; compilation debug =“true”&gt;