Condividi tramite


Procedura: convalidare in base a criteri i controlli server ASP.NET

Aggiornamento: novembre 2007

È possibile verificare che i dati immessi da un utente corrispondano a un criterio predefinito, come un numero di telefono, un codice postale, un indirizzo di posta elettronica e così via. A questo scopo è possibile utilizzare un'espressione regolare. Per ulteriori informazioni sulle espressioni regolari, vedere Espressioni regolari di .NET Framework.

Nota sulla sicurezza:

Per impostazione predefinita, le pagine Web ASP.NET verificano automaticamente che utenti malintenzionati non tentino di inviare script o elementi HTML all'applicazione. Per ulteriori informazioni, vedere Cenni preliminari sugli attacchi tramite script.

Per eseguire la convalida in base a un'espressione regolare

  1. Aggiungere un controllo RegularExpressionValidator alla pagina e impostare le proprietà riportate di seguito.

    Proprietà

    Descrizione

    ControlToValidate

    ID del controllo da convalidare.

    ErrorMessage, Text, Display

    Proprietà che specificano il testo e il percorso dell'errore o degli errori visualizzati se la convalida non riesce. Per informazioni dettagliate, vedere Procedura: controllare la visualizzazione dei messaggi di errore di convalida per i controlli server ASP.NET.

  2. Impostare il criterio in base al quale eseguire il confronto, impostando la proprietà ValidationExpression su un'espressione regolare.

    Nota:

    Se si utilizza una finestra di progettazione visiva come Visual Studio .NET 2005, è possibile effettuare la scelta dai criteri predefiniti indicati nel controllo RegularExpressionValidator.

    Per consentire più criteri, utilizzare il carattere barra verticale (|) come separatore delle espressioni.

    Nota:

    Nella convalida sul lato client, le espressioni regolari vengono valutate tramite ECMAScript (JavaScript). una modalità che differisce dalla verifica tramite espressioni regolari sul lato server per pochi aspetti di minore importanza.

  3. Aggiungere un test al codice della pagina Web ASP.NET per verificarne la validità. Per informazioni dettagliate, vedere Procedura: eseguire il test della validità dei controlli server ASP.NET a livello di codice.

    Nell'esempio di codice riportato di seguito viene illustrato come utilizzare un controllo RegularExpressionValidator per verificare la validità di un codice di avviamento postale americano immesso dall'utente. Per la verifica vengono utilizzati due criteri: cinque cifre e cinque cifre, un trattino e altre quattro cifre.

    ZIP: <asp:TextBox id="txtZIP" runat="SERVER"></asp:TextBox>
         <asp:RegularExpressionValidator 
           id="txtZIP_validation" runat="SERVER" 
           ControlToValidate="txtZIP" 
           ErrorMessage="Enter a valid US ZIP code."
           ValidationExpression="\d{5}(-\d{4})?">
         </asp:RegularExpressionValidator>
    
    ZIP: <asp:TextBox id="txtZIP" runat="SERVER"></asp:TextBox>
         <asp:RegularExpressionValidator 
           id="txtZIP_validation" runat="SERVER" 
           ControlToValidate="txtZIP" 
           ErrorMessage="Enter a valid US ZIP code."
           ValidationExpression="\d{5}(-\d{4})?">
         </asp:RegularExpressionValidator>
    

Vedere anche

Concetti

Tipi di convalida per i controlli ASP.NET lato server

Altre risorse

Convalida dei controlli ASP.NET