Sdílet prostřednictvím


IValidator Rozhraní

Definice

Definuje vlastnosti a metody, které musí implementovat objekty, které se účastní ověřování webových formulářů.

public interface class IValidator
public interface IValidator
type IValidator = interface
Public Interface IValidator
Odvozené

Příklady

Důležité

Tento příklad obsahuje textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba. Ve výchozím nastavení ASP.NET webové stránky ověřte, že uživatelský vstup neobsahuje skript nebo elementy HTML. Další informace najdete v tématu Přehled zneužití skriptů.

<!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>

Poznámky

Třídy, které implementují toto rozhraní, představují možnou chybu vstupu uživatele. Při zavolání Validate metody třída aktualizuje svou IsValid vlastnost, aby značila, jestli došlo k chybě. Vlastnost ErrorMessage obsahuje textový popis chybového stavu, který můžete zobrazit, když dojde k chybě.

Třída BaseValidator implementuje toto rozhraní a všechny ostatní třídy ovládacích prvků serveru ověřování ASP.NET dědí z BaseValidatortřídy . Informace o serverových ovládacích prvcích ověřování a o tom, jak fungují, najdete v tématu ASP.NET Ověřovací ovládací prvky.

Podrobnosti o vývoji vlastních ASP.NET ověřovacích serverových ovládacích prvků najdete v tématu Postupy: Ověření pomocí vlastní funkce pro ASP.NET serverové ovládací prvky.

Vlastnosti

ErrorMessage

Při implementaci třídou získá nebo nastaví text chybové zprávy vygenerovaný při selhání ověřované podmínky.

IsValid

Při implementaci třídou získá nebo nastaví hodnotu označující, zda obsah zadaný uživatelem v zadaném ovládacím prvku projde ověřením.

Metody

Validate()

Při implementaci třídou vyhodnocuje podmínku, která kontroluje a aktualizuje IsValid vlastnost .

Platí pro

Viz také