C# 如何强制服务器端验证而不仅仅是客户端验证?

C# 如何强制服务器端验证而不仅仅是客户端验证?,c#,asp.net,validation,C#,Asp.net,Validation,我有一个Webforms应用程序,不希望用户输入无效值 目前,我正在使用以下验证程序控件解决此问题: <asp:TextBox runat="server" ID="tbInsert"></asp:TextBox> <asp:RequiredFieldValidator runat="server" ControlToValidate="tbInsert" ID="rqtbInsert" ErrorMessage="Required"> <

我有一个Webforms应用程序,不希望用户输入无效值

目前,我正在使用以下验证程序控件解决此问题:

<asp:TextBox runat="server" ID="tbInsert"></asp:TextBox>
<asp:RequiredFieldValidator runat="server" ControlToValidate="tbInsert"  ID="rqtbInsert"
     ErrorMessage="Required"> 
</asp:RequiredFieldValidator> 

验证器不仅在客户端进行检查。所有具有
CausesValidation=true
的控件将在服务器端触发,这将导致所有相关(如果指定,否则为所有)验证器进行验证


因此客户端检查是可选的,可以通过启用/禁用,而服务器端检查总是发生,也可以通过-方法以编程方式触发。

验证程序不仅仅在客户端进行检查。所有具有
CausesValidation=true
的控件将在服务器端触发,这将导致所有相关(如果指定,否则为所有)验证器进行验证


因此客户端检查是可选的,可以通过启用/禁用,而服务器端检查始终会发生,也可以通过-方法以编程方式触发。

在服务器端,使用Page.IsValid属性检查是否所有验证控件都已通过,返回一个值,该值指示页面验证是否成功。发件人:


在服务器端,使用Page.IsValid属性检查是否所有验证控件都已通过,这将返回一个值,指示页面验证是否成功。发件人:


而不是为每个控件添加验证。添加静态验证助手类,并将模型的所有验证方法写入同一个类。 只需从服务器端的接收方法验证所有每个方法


通过这种方式,您将具有依赖性操作并实现所需的行为,而不会过度填充方法(只需在方法条目处进行一次调用)

而不是为每个控件添加验证。添加静态验证助手类,并将模型的所有验证方法写入同一个类。 只需从服务器端的接收方法验证所有每个方法

这样,您将具有依赖性操作,并在不过度填充方法的情况下实现所需的行为(只需在方法条目处进行一次调用)

if (!string.IsNullOrEmpty(tbInsert.Text))
{
   //do sth.
}
 private void ValidateBtn_Click(Object Sender, EventArgs E)
{
    Page.Validate();
    if (Page.IsValid == true)
        lblOutput.Text = "Page is Valid!";
    else
        lblOutput.Text = "Some required fields are empty.";
}