IValidator Интерфейс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет свойства и методы, которые должны быть реализованы объектами, участвующими в проверке веб-форм.
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 проверки см. в статье How to: Validate with a Custom Function for ASP.NET Server Controls.
Свойства
ErrorMessage |
При реализации каким-либо классом получает или задает текст сообщения об ошибке, выдаваемый при сбое проверяемого условия. |
IsValid |
При реализации каким-либо классом получает или задает значение, которое указывает, прошло ли проверку введенное пользователем содержимое указанного элемента управления. |
Методы
Validate() |
При реализации каким-либо классом оценивает проверяемое условие и обновляет свойство IsValid. |
Применяется к
См. также раздел
- ValidatorCollection
- Validators
- BaseValidator
- BaseCompareValidator
- CompareValidator
- CustomValidator
- RangeValidator
- RegularExpressionValidator
- RequiredFieldValidator
- Практическое руководство. Проверка с помощью пользовательской функции для серверных элементов управления ASP.NET
- Элементы управления ASP.NET проверки