Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 15631|Antwoord: 1

[ASP.NET] ASP.NET Gedetailleerde uitleg van de verificatiecontroles

[Link kopiëren]
Geplaatst op 15-05-2015 22:47:59 | | |

Of het nu aan de serverzijde of op de client gebeurt, er is niet nodig om zoveel na te denken, en programmeurs kunnen zich richten op het ontwerp van het hoofdprogramma.

ASP.NET heeft publiekelijk zes validatiecontroles, die als volgt zijn:

Beschrijving van de functie van de besturingsnaam
RequiredFieldValidator wordt gebruikt om te controleren of er een invoerwaarde is
CompareValidator vergelijkt twee invoer als verzameling
RangeValidator-invoer of deze zich in het opgegeven bereik bevindt
RegularExpressionValidator: Een validatiecontrole voor reguliere expressies
CustomValidator: Aangepaste validatiecontroles
ValidationSummary vat de validatieresultaten samen

Laten we eens kijken hoe deze besturingselementen worden gebruikt:

1. Gebruik RequiredFieldValidator

De standaardcode die door de RequiredFieldValidator-besturing wordt gebruikt, is als volgt:

<ASP:RequiredFieldValidator id="Validator_Name" Runat="Server"
ControlToValidate="Naam van de controle om te controleren"
ErrorMessage="Foutmelding"
Display="Statisch| Dymatic| Geen"

Plaatsvervangers
</ASP: VereisteFieldValidator >

In de bovenstaande standaardcode:
ControlToValidate: Geeft aan dat de controle-ID gecontroleerd moet worden;
ErrorMessage: Geeft de foutmelding aan die verschijnt wanneer de controle niet legaal is;
Weergave: Hoe het foutbericht wordt weergegeven; Statisch geeft aan dat het foutbericht van de controle een positieve plaats in de pagina heeft; Dymatic betekent dat de paginacontrole alleen wordt bezet wanneer er een foutmelding verschijnt; Geen foutmelding betekent dat de fout niet wordt weergegeven wanneer hij verschijnt, maar hij kan wel worden weergegeven in de ValidatorSummary;
Placeholder: Wanneer het display statisch is, neemt het foutbericht een paginaruimte in die zo groot is als de "placeholder";

Laten we nu naar een voorbeeld kijken:
<ASP:TextBox id="txtName" RunAt="Server"/>
<ASP:RequiredFieldValidator id="Validator1" Runat="Server"
ControlToValidate="txtName"
ErrorMessage="Naam moet worden ingevoerd"
Display="Statisch">
*Naam moet worden ingevoerd
</ASP:RequiredFieldValidator>

Controleer in het bovenstaande voorbeeld of de txtName-controle is ingevoerd; zo niet, dan wordt het foutbericht "Name must be in" weergegeven. Is het niet simpel?
Opmerking: De bovenstaande code en de code van de andere bedieningselementen hieronder zijn het beste in het formulier te plaatsen, in tegenstelling tot in ASP kan het formulier het beste zo worden geschreven:
<Form RunAt="Server">
Andere codes
</Vorm>
Op deze manier wordt de vorm aan de serverzijde uitgevoerd en is de commit geldig;

2. CompareValidator-controle

Vergelijk de besturing Vergelijk of de invoer van de twee besturingselementen voldoet aan de programma-instellingen, begrijp de vergelijking niet alleen als "gelijk", hoewel gelijkheid het meest wordt gebruikt, de vergelijking hier omvat een breed bereik, je zult het begrijpen door naar de standaardcode te kijken.

De standaardcode voor de vergelijkingsbesturing is als volgt:
<ASP:CompareValidator id="Validator_ID" RunAt="Server"
ControlToValidate="Control ID om te verifiëren"
errorMessage="Foutmelding"
ControlToCompare="Control ID om te vergelijken"
type="String| Integer| Double| DateTime| Valuta"
operator="Equal| NotEqual| GreaterThan| GreaterTanEqual| LessThan| MinderDan Gelijk| DataTypeCheck"
Display="Statisch| Dymatic| Geen"

Plaatsvervangers
</ASP:CompareValidator>

In de bovenstaande standaardcode:
Type geeft het datatype aan van de te vergelijken controle;
Operator betekent vergelijkingsoperatie (dat wil zeggen, waarom vergelijking niet alleen "gelijk" is), hier zijn er 7 manieren om te vergelijken;
Andere eigenschappen zijn hetzelfde als RequiredFieldValidator;
Let hier op het verschil tussen ControlToValidate en ControlToCompare; als operate GreateThan is, dan moet ControlToCompare groter zijn dan ControlToValidate om legaal te zijn, dus je zou de betekenis van beide moeten begrijpen, toch? Voor voorbeelden kunt u de RequiredFieldValidator-controle raadplegen en uw eigen controle ontwerpen op basis van de standaardcode.

3. RangeValidator-controle

Controleer dat de invoer binnen een bepaald bereik valt, dat wordt bepaald door MaximumValue en MinimunVlaue, en de standaardcode is als volgt:

<ASP:RangeValidator id="Vaidator_ID" Runat="Server"
controlToValidate="Control ID om te valideren"
type="Integer"
MinimumWaarde="Minimum"
MaximumValue="Maximum"
errorMessage="Foutmelding"
Display="Statisch| Dymatic| Geen"

Plaatsvervangers
</ASP:RangeValidator>

In bovenstaande code:
Gebruik MinimumValue en MaximumValue om het waardebereik van controle-invoer te definiëren, en Type om het type besturingsinvoerwaarden te bepalen.

4. RegularExpresionValidator (reguliere expressie) controle

De validatiecontrole voor reguliere expressies is erg krachtig, je kunt de validatiemethode eenvoudig zelf construeren, laten we eerst naar de standaardcode kijken:

<ASP:RegularExpressionValidator id="Validator_ID" RunAt="Server"
ControlToValidate="Om controlenaam te verifiëren"
ValidationExpression="Reguliere Expressie"
errorMessage="Foutmelding"
display="Statisch"

Plaatsvervangers
</ASP:RegularExpressionValidator>

In de bovenstaande standaardcode staat ValidationExpression centraal, laten we nu eens kijken naar de constructie ervan:
In ValidationExpression vertegenwoordigen verschillende tekens verschillende betekenissen:
"." Stelt willekeurige karakters voor;
"*" betekent dat het gemakkelijk te combineren is met andere uitdrukkingen;
"[A-Z]" duidt op een hoofdletter;
"\d" betekent gemakkelijk getal;
Let op dat in bovenstaande uitdrukking aanhalingstekens niet worden opgenomen;
Voorbeeld:
Reguliere uitdrukking: ".*[A-Z]" duidt elke combinatie van tekens aan die beginnen met een getal, gevolgd door een hoofdletter.

5. ValidatieSamenvattende controle

Deze controle verzamelt alle validatiefoutinformatie voor deze pagina en kan deze organiseren voor latere weergave. De standaardcode is als volgt:

<ASP:ValidationSummary id="Validator_ID" RunAT="Server"
HeaderText="Headerinformatie"
ShowSamenvatting="Waar| Onwaar"
DiaplayMode="Lijst| BulletList| SingleParagraph"

</ASP: ValidatieSamenvatting >
In bovenstaande standaardcode is HeadText gelijkwaardig aan de headText van de tabel, en DisplayMode vertegenwoordigt de weergave van foutinformatie: List is gelijk aan <BR> in HTML; BulletList is gelijkwaardig <LI> aan in HTML; SingleParegraph betekent dat er geen manier is om te splitsen tussen foutmeldingen;

6. CustomValidator-controle

De controle gebruikt een aangepaste functie om de authenticatiemethode te definiëren, en de standaardcode is als volgt:

<ASP:CustomValidator id="Validator_ID" RunAt="Server"
controlToValidate="Control to validate"
onServerValidateFunction="Validate Function"
errorMessage="Foutmelding"
Display="Statisch| Dymatic| Geen"

Plaatsvervangers
</ASP: CustomValidator >

In bovenstaande code moet de gebruiker een functie definiëren om de invoer te valideren.

7. Samenvatting
ASP.NET verificatiecontroles zijn ingevoerd, kun je ze krachtig vinden en hoef je je nooit meer zorgen te maken over verificatie. Natuurlijk is de bovenstaande introductie niet bijzonder gedetailleerd, en de subtiliteiten worden ook gevraagd om zelf Microsofts SDK te lezen.



======================= Bijlage: asp.net reguliere expressies die vaak worden gebruikt in validatiecontroles ======================

asp.net reguliere expressies die vaak worden gebruikt in validatiecontroles:

Voer alleen nummers in: "^[0-9]*$"

Alleen n-cijferige nummers kunnen worden ingevoerd: "^\d{n}$"

Voer slechts minstens n cijfers in: "^\d{n,}$"

Alleen getallen in het m-n cijfer kunnen worden ingevoerd: "^\d{m,n}$"

Alleen getallen die beginnen met nul en niet-nul kunnen worden ingevoerd: "^(0|[ 1-9][0-9]*)$"

Alleen positieve reële getallen met twee decimalen kunnen worden ingevoerd: "^[0-9]+(.[ 0-9]{2}) $"

Alleen positieve reële getallen met 1-3 decimalen kunnen worden ingevoerd: "^[0-9]+(.[ 0-9]{1,3}) $"

Er kunnen alleen niet-nul positieve gehele getallen worden ingevoerd: "^+ [1-9][0-9]*$"

Alleen negatieve gehele getallen die niet nul zijn, kunnen worden ingevoerd: "^-[1-9][0-9]*$"

Alleen tekens van lengte 3 kunnen worden ingevoerd: "^. {3}$"

Er kan slechts een reeks van 26 letters worden ingevoerd: "^[A-Za-z]+$"

Er kan slechts een string bestaande uit 26 hoofdletters worden ingevoerd: "^[A-Z]+$"

Er kan slechts een reeks van 26 kleine letters worden ingevoerd: "^[a-z]+$"

Er kan alleen een string bestaande uit cijfers en 26 letters worden ingevoerd: "^[A-Za-z0-9]+$"

Je kunt alleen een string invoeren die bestaat uit cijfers, 26 letters of een onderstreep: "^\w+$"

Controleer het gebruikerswachtwoord: "^[a-zA-Z]\w{5,17}$" is correct opgemaakt als beginnend met een letter, tussen de 6-18 lang, en kan alleen tekens, cijfers en onderstreepjes bevatten.

Controleer of het ^%&' bevat; = $", enzovoort: "[^%&',; = $x 22]+"

Alleen Chinese karakters kunnen worden ingevoerd: "^[u4e00-u9fa5],{0,}$"

Verifieer e-mailadres: "^\w+[-+.] \w+)*@\w+([-.] \w+)*.\w+([-.] \w+)*$"

Controleer de internet-URL:"^http://([\w-]+.) +[\w-]+(/[\w-./ %&=]*) $"

Verificatietelefoonnummer: "^((\d{3,4})|\d{3,4}-) \d{7,8}$" is correct opgemaakt: "XXXX-XXXXXXX","XXXX-XXXXXXX","XXX-XXXXXXX", "XXX-XXXXXXX", "XXX-XXXXXXX","XXXXXXXXXX".

ID-nummer verifiëren (15 of 18 cijfers): "^d{15}|d{}18$"

Valideer 12 maanden van een jaar: "^(0 [1-9]|1[0-2])$" Het correcte formaat is: "01"-"09" en "1""12"

31 dagen validatie voor een maand: "^((0 [1-9])|( (1|2) [0-9])| 30|31)$" correct is geformatteerd: "01", "09" en "1""31".





Vorig:SQL Server maakt tabellen toe Primaire sleutels Voegt kolommen toe Veelgebruikte SQL-statements
Volgend:Hoe krijg je de teksteigenschap van een TextBox in de kolom GridView-sjabloon
Geplaatst op 16-05-2015 09:32:21 |
Vaak verwarren ze deze besturing
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com