IValidator 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
定义参与 Web 窗体验证的对象必须实现的属性和方法。
public interface class IValidator
public interface IValidator
type IValidator = interface
Public Interface IValidator
- 派生
示例
重要
此示例具有一个接受用户输入的文本框,这是一个潜在的安全威胁。 默认情况下,ASP.NET 网页验证用户输入是否不包含脚本或 HTML 元素。 有关详细信息,请参阅脚本侵入概述。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>IValidator Example demonstrating IsValid & ErrorMessage</title>
<script language="C#" runat="server">
void Button_Click(Object sender, EventArgs e)
{
// Generating the random number.
Random rand_s = new Random();
myCompareValidate.ValueToCompare = rand_s.Next(1, 10).ToString();
// Setting the ErrorMessage.
myCompareValidate.ErrorMessage="Try Again!!";
myCompareValidate.Validate();
// Check for Validity of control.
if ((myCompareValidate.IsValid) && (myTextBox.Text != ""))
{
labelOutput.Text = "You guessed correctly!!";
labelOutput.ForeColor = System.Drawing.Color.Blue;
}
else
{
labelOutput.Text = "You guessed poorly";
labelOutput.ForeColor = System.Drawing.Color.Black;
}
labelOutput.Text += "<br /><br />" + "The number is: " +
myCompareValidate.ValueToCompare;
}
</script>
</head>
<body>
<form runat="server" id="myForm">
<h3>IValidator Example demonstrating IsValid & ErrorMessage</h3>
<h5>Guess!! a number between 1 and 10 :</h5>
<asp:TextBox id="myTextBox" runat="server" />
<asp:CompareValidator id="myCompareValidate"
ControlToValidate="myTextBox" ValueToCompare="0"
EnableClientScript="False" Type="Integer" Text="*"
runat="server" />
<br />
<asp:Button Text="Submit" OnClick="Button_Click" runat="server" />
<br />
<asp:Label id="labelOutput" runat="server" />
<br />
<asp:ValidationSummary id="Summary1" runat="server" />
</form>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>IValidator Example demonstrating IsValid & ErrorMessage</title>
<script language="VB" runat="server">
Sub Button_Click(sender As [Object], e As EventArgs)
' Generating a random number.
Dim rand_s As New Random()
myCompareValidate.ValueToCompare = rand_s.Next(1, 10).ToString()
' Set the ErrorMessage.
myCompareValidate.ErrorMessage = "Try Again!!"
myCompareValidate.Validate()
' Check for Validity of control.
If myCompareValidate.IsValid And myTextBox.Text <> "" Then
labelOutput.Text = "You guessed correctly!!"
labelOutput.ForeColor = System.Drawing.Color.Blue
Else
labelOutput.Text = "You guessed poorly"
labelOutput.ForeColor = System.Drawing.Color.Black
End If
labelOutput.Text += "<br /><br />" + "The number is: " + _
myCompareValidate.ValueToCompare
End Sub 'Button_Click
</script>
</head>
<body>
<form runat="server" id="myForm">
<h3>IValidator Example demonstrating IsValid & ErrorMessage</h3>
<h5>Guess!! a number between 1 and 10:</h5>
<asp:TextBox id="myTextBox" runat="server" />
<asp:CompareValidator id="myCompareValidate"
ControlToValidate="myTextBox" ValueToCompare="0"
EnableClientScript="False" Type="Integer" Text="*"
runat="server" />
<br />
<asp:Button Text="Submit" OnClick="Button_Click" runat="server" />
<br />
<asp:Label id="labelOutput" runat="server" />
<br />
<asp:ValidationSummary id="Summary1" runat="server" />
</form>
</body>
</html>
注解
实现此接口的类表示可能的用户输入错误。 Validate调用 方法时,类会更新其IsValid属性,以指示是否发生了错误。 属性 ErrorMessage 包含错误条件的文本说明,可在发生错误时显示该条件。
类 BaseValidator 实现此接口,所有其他 ASP.NET 验证服务器控件类继承自 BaseValidator。 有关验证服务器控件及其工作原理的信息,请参阅 ASP.NET 验证控件。
有关如何开发自定义 ASP.NET 验证服务器控件的详细信息,请参阅 如何:使用自定义函数验证 ASP.NET 服务器控件。
属性
ErrorMessage |
由类实现时,获取或设置条件验证失败时生成的错误消息。 |
IsValid |
由类实现时,获取或设置一个值,该值指示用户输入的指定控件内容是否通过验证。 |
方法
Validate() |
由类实现时,评估其检查的条件并更新 IsValid 属性。 |