Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 15631|Απάντηση: 1

[ASP.NET] ASP.NET Αναλυτική επεξήγηση των ελέγχων επαλήθευσης

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 15/5/2015 10:47:59 μ.μ. | | |

Είτε γίνεται από την πλευρά του διακομιστή είτε από την πλευρά του πελάτη, δεν χρειάζεται να σκέφτεστε τόσο πολύ και οι προγραμματιστές μπορούν να επικεντρωθούν στο σχεδιασμό του κύριου προγράμματος.

ASP.NET διαθέτει δημόσια έξι ελέγχους επικύρωσης, οι οποίοι είναι οι εξής:

Όνομα στοιχείου ελέγχου Περιγραφή συνάρτησης
Το RequiredFieldValidator χρησιμοποιείται για να ελέγξει εάν υπάρχει τιμή εισόδου
Το CompareValidator συγκρίνει δύο εισόδους όπως έχουν οριστεί
RangeValidator Εισαγάγετε εάν βρίσκεται στο καθορισμένο εύρος
RegularExpressionValidator: Ένα στοιχείο ελέγχου επικύρωσης κανονικής έκφρασης
CustomValidator: Προσαρμοσμένα στοιχεία ελέγχου επικύρωσης
Το ValidationSummary συνοψίζει τα αποτελέσματα επικύρωσης

Ας ρίξουμε μια ματιά στον τρόπο με τον οποίο χρησιμοποιούνται αυτά τα στοιχεία ελέγχου:

1. Χρησιμοποιήστε το RequiredFieldValidator

Ο τυπικός κωδικός που χρησιμοποιείται από το στοιχείο ελέγχου RequiredFieldValidator είναι ο εξής:

<ASP:RequiredFieldValidator id="Validator_Name" Runat="Διακομιστής"
ControlToValidate="Όνομα στοιχείου ελέγχου για έλεγχο"
ErrorMessage="Μήνυμα σφάλματος"
display="Στατική| Το Dymatic| Κανένας"

Σύμβολα κράτησης θέσης
</ASP: RequiredFieldValidator >

Στον παραπάνω τυπικό κωδικό:
ControlToValidate: Υποδεικνύει ότι το αναγνωριστικό ελέγχου πρέπει να ελεγχθεί.
ErrorMessage: Υποδεικνύει το μήνυμα σφάλματος που εμφανίζεται όταν ο έλεγχος δεν είναι νόμιμος.
Οθόνη: Πώς εμφανίζεται το μήνυμα σφάλματος. Στατικό υποδεικνύει ότι το μήνυμα σφάλματος του στοιχείου ελέγχου έχει θετική θέση στη σελίδα. Dymatic σημαίνει ότι το στοιχείο ελέγχου σελίδας είναι κατειλημμένο μόνο όταν εμφανίζεται ένα μήνυμα σφάλματος ελέγχου. Κανένα σημαίνει ότι το σφάλμα δεν εμφανίζεται όταν εμφανίζεται, αλλά μπορεί να εμφανιστεί στο ValidatorSummary.
Placeholder: Όταν η οθόνη είναι στατική, το μήνυμα σφάλματος καταλαμβάνει χώρο σελίδας τόσο μεγάλο όσο το "placeholder".

Τώρα, ας δούμε ένα παράδειγμα:
<ASP:TextBox id="txtName" RunAt="Διακομιστής"/>
<ASP:RequiredFieldValidator id="Validator1" Runat="Διακομιστής"
ControlToValidate="txtΌνομα"
ErrorMessage="Το όνομα πρέπει να εισαχθεί"
display="Στατική">
*Το όνομα πρέπει να εισαχθεί
</ASP:RequiredFieldValidator>

Στο παραπάνω παράδειγμα, ελέγξτε εάν έχει εισαχθεί το στοιχείο ελέγχου txtName, εάν όχι, εμφανίζεται το μήνυμα σφάλματος "Το όνομα πρέπει να εισαχθεί". Δεν είναι απλό;
Σημείωση: Ο παραπάνω κώδικας και ο κώδικας των άλλων στοιχείων ελέγχου παρακάτω τοποθετούνται καλύτερα στη Φόρμα, σε αντίθεση με το ASP, η Φόρμα γράφεται καλύτερα ως εξής:
<Form RunAt="Διακομιστής">
Άλλοι κωδικοί
</Έντυπο>
Με αυτόν τον τρόπο, η φόρμα εκτελείται από την πλευρά του διακομιστή και η δέσμευση είναι έγκυρη.

2. Έλεγχος CompareValidator

Συγκρίνετε στοιχεία ελέγχου Συγκρίνετε εάν οι είσοδοι των δύο στοιχείων ελέγχου πληρούν τις ρυθμίσεις του προγράμματος, μην καταλαβαίνετε απλώς τη σύγκριση ως "ίση", αν και η ισότητα είναι η πιο χρησιμοποιούμενη, στην πραγματικότητα, η σύγκριση εδώ περιλαμβάνει ένα ευρύ φάσμα, θα το καταλάβετε κοιτάζοντας τον τυπικό κώδικα.

Ο τυπικός κώδικας για τα στοιχεία ελέγχου σύγκρισης είναι ο εξής:
<ASP:CompareValidator id="Validator_ID" RunAt="Διακομιστής"
ControlToValidate="Αναγνωριστικό στοιχείου ελέγχου για επαλήθευση"
errorMessage="Μήνυμα σφάλματος"
ControlToCompare="Αναγνωριστικό στοιχείου ελέγχου για σύγκριση"
type="Συμβολοσειρά| Ακέραιος| Δίκλινο| ΗμερομηνίαΏρα| Νόμισμα"
operator="Ίσο| ΌχιΊσο| Μεγαλύτερο από| GreaterTanEqual| Λιγότερο από| Λιγότερο από ίσο| DataTypeCheck"
display="Στατική| Το Dymatic| Κανένας"

Σύμβολα κράτησης θέσης
</ASP:CompareValidator>

Στον παραπάνω τυπικό κωδικό:
Τύπος δηλώνει τον τύπο δεδομένων του ελέγχου που πρόκειται να συγκριθεί.
Τελεστής σημαίνει λειτουργία σύγκρισης (δηλαδή, γιατί η σύγκριση δεν είναι απλώς "ίση"), εδώ, υπάρχουν 7 τρόποι σύγκρισης.
Άλλες ιδιότητες είναι ίδιες με το RequiredFieldValidator.
Εδώ, δώστε προσοχή στη διαφορά μεταξύ ControlToValidate και ControlToCompare, εάν η λειτουργία είναι GreateThan, τότε το ControlToCompare πρέπει να είναι μεγαλύτερο από το ControlToValidate για να είναι νόμιμο, τώρα, θα πρέπει να καταλάβετε την έννοια των δύο, σωστά; Για παραδείγματα, ανατρέξτε στο στοιχείο ελέγχου RequiredFieldValidator και σχεδιάστε το δικό σας σε σχέση με τον τυπικό κώδικα.

3. Έλεγχος RangeValidator

Βεβαιωθείτε ότι η είσοδος βρίσκεται εντός ενός συγκεκριμένου εύρους, το οποίο καθορίζεται από το MaximumValue και το MinimunVlaue και ότι ο τυπικός κωδικός είναι ο εξής:

<ASP:RangeValidator id="Vaidator_ID" Runat="Διακομιστής"
controlToValidate="Αναγνωριστικό στοιχείου ελέγχου για επικύρωση"
type="Ακέραιος"
MinimumValue="Ελάχιστο"
MaximumValue="Μέγιστη"
errorMessage="Μήνυμα σφάλματος"
display="Στατική| Το Dymatic| Κανένας"

Σύμβολα κράτησης θέσης
</ASP:RangeValidator>

Στον παραπάνω κώδικα:
Χρησιμοποιήστε τις επιλογές MinimumValue και MaximumValue για να ορίσετε την περιοχή τιμών των εισόδων στοιχείων ελέγχου και πληκτρολογήστε για να ορίσετε τον τύπο των τιμών εισόδου στοιχείων ελέγχου.

4. Έλεγχος RegularExpresionValidator (κανονική έκφραση).

Το στοιχείο ελέγχου επικύρωσης κανονικής έκφρασης είναι πολύ ισχυρό, μπορείτε εύκολα να κατασκευάσετε μόνοι σας τη μέθοδο επικύρωσης, ας ρίξουμε μια ματιά πρώτα στον τυπικό κώδικα:

<ASP:RegularExpressionValidator id="Validator_ID" RunAt="Διακομιστής"
ControlToValidate="Για να επαληθεύσετε το όνομα του στοιχείου ελέγχου"
ValidationExpression="Κανονική έκφραση"
errorMessage="Μήνυμα σφάλματος"
display="Στατική"

Σύμβολα κράτησης θέσης
</ASP:NormalExpressionValidator>

Στον παραπάνω τυπικό κώδικα, το ValidationExpression είναι το επίκεντρο, τώρα ας ρίξουμε μια ματιά στην κατασκευή του:
Στο ValidationExpression, διαφορετικοί χαρακτήρες αντιπροσωπεύουν διαφορετικές έννοιες:
"." Αναπαριστά αυθαίρετους χαρακτήρες.
Το "*" σημαίνει ότι είναι εύκολο να συνδυαστεί με άλλες εκφράσεις.
Το "[A-Z]" υποδηλώνει οποιοδήποτε κεφαλαίο γράμμα.
"\d" σημαίνει εύκολος αριθμός.
Σημειώστε ότι στην παραπάνω έκφραση δεν περιλαμβάνονται εισαγωγικά.
Παράδειγμα:
Κανονική έκφραση: Το ".*[A-Z]" υποδεικνύει οποιονδήποτε συνδυασμό χαρακτήρων που ξεκινούν με έναν αριθμό, ακολουθούμενο από ένα κεφαλαίο γράμμα.

5. ΕπικύρωσηΣυνοπτικός έλεγχος

Αυτό το στοιχείο ελέγχου συλλέγει όλες τις πληροφορίες σφάλματος επικύρωσης για αυτήν τη σελίδα και μπορεί να τις οργανώσει για μελλοντική εμφάνιση. Ο τυπικός κωδικός του είναι ο εξής:

<ASP:ValidationSummary id="Validator_ID" RunAT="Διακομιστής"
HeaderText="Πληροφορίες κεφαλίδας"
ShowSummary="Αληθές| Ψευδής"
DiaplayMode="Λίστα| Λίστα κουκκίδων| SingleParagraph"

</ASP: Σύνοψη επικύρωσης >
Στον παραπάνω τυπικό κώδικα, το HeadText είναι ισοδύναμο με το headText του πίνακα και το DisplayMode αντιπροσωπεύει την εμφάνιση πληροφοριών σφάλματος: Η λίστα είναι ισοδύναμη <BR> με την HTML. Το BulletList είναι <LI> ισοδύναμο με το HTML. Το SingleParegraph σημαίνει ότι δεν υπάρχει τρόπος διαχωρισμού μεταξύ των μηνυμάτων σφάλματος.

6. Έλεγχος CustomValidator

Το στοιχείο ελέγχου χρησιμοποιεί μια προσαρμοσμένη συνάρτηση για να ορίσει τη μέθοδο ελέγχου ταυτότητας και ο τυπικός κωδικός του είναι ο εξής:

<ASP:CustomValidator id="Validator_ID" RunAt="Διακομιστής"
controlToValidate="Στοιχείο ελέγχου για επικύρωση"
onServerValidateFunction="Επικύρωση συνάρτησης"
errorMessage="Μήνυμα σφάλματος"
display="Στατική| Το Dymatic| Κανένας"

Σύμβολα κράτησης θέσης
</ASP: CustomValidator >

Στον παραπάνω κώδικα, ο χρήστης πρέπει να ορίσει μια συνάρτηση για την επικύρωση της εισόδου.

7. Σύνοψη
ASP.NET έχουν εισαχθεί τα στοιχεία ελέγχου επαλήθευσης, μπορείτε να τα βρείτε ισχυρά και να μην ανησυχείτε ποτέ ξανά για την επαλήθευση. Φυσικά, η παραπάνω εισαγωγή δεν είναι ιδιαίτερα λεπτομερής και οι λεπτές αποχρώσεις καλούνται επίσης να διαβάσετε μόνοι σας το SDK της Microsoft.



======================= Συνημμένο: asp.net κανονικές εκφράσεις που χρησιμοποιούνται συνήθως σε ελέγχους επικύρωσης ======================

asp.net κανονικές εκφράσεις που χρησιμοποιούνται συνήθως σε ελέγχους επικύρωσης:

Εισαγάγετε μόνο αριθμούς: "^[0-9]*$"

Μόνο n-ψήφιοι αριθμοί μπορούν να εισαχθούν: "^\d{n}$"

Εισαγάγετε μόνο τουλάχιστον n ψηφία: "^\d{n,}$"

Μόνο οι αριθμοί στο ψηφίο mn μπορούν να εισαχθούν: "^\d{m,n}$"

Μόνο αριθμοί που ξεκινούν με μηδέν και μη μηδέν μπορούν να εισαχθούν: "^(0|[ 1-9][0-9]*)$"

Μπορούν να εισαχθούν μόνο θετικοί πραγματικοί αριθμοί με δύο δεκαδικά ψηφία: "^[0-9]+(.[ 0-9]{2}) $"

Μπορούν να εισαχθούν μόνο θετικοί πραγματικοί αριθμοί με 1-3 δεκαδικά ψηφία: "^[0-9]+(.[ 0-9]{1,3}) $"

Μόνο μη μηδενικοί θετικοί ακέραιοι αριθμοί μπορούν να εισαχθούν: "^+ [1-9][0-9]*$"

Μόνο αρνητικοί ακέραιοι αριθμοί που δεν είναι μηδέν μπορούν να εισαχθούν: "^-[1-9][0-9]*$"

Μπορούν να εισαχθούν μόνο χαρακτήρες μήκους 3: "^. {3}$"

Μόνο μια σειρά από 26 γράμματα μπορεί να εισαχθεί: "^[A-Za-z]+$"

Μόνο μια συμβολοσειρά που αποτελείται από 26 κεφαλαία γράμματα μπορεί να εισαχθεί: "^[A-Z]+$"

Μόνο μια σειρά από 26 πεζά γράμματα μπορεί να εισαχθεί: "^[a-z]+$"

Μόνο μια συμβολοσειρά που αποτελείται από αριθμούς και 26 γράμματα μπορεί να εισαχθεί: "^[A-Za-z0-9]+$"

Μπορείτε να εισαγάγετε μόνο μια συμβολοσειρά που αποτελείται από αριθμούς, 26 γράμματα ή μια υπογράμμιση: "^\w+$"

Επαλήθευση κωδικού πρόσβασης χρήστη: Το "^[a-zA-Z]\w{5,17}$" έχει μορφοποιηθεί σωστά ώστε να ξεκινά με ένα γράμμα, μήκους μεταξύ 6-18 και μπορεί να περιέχει μόνο χαρακτήρες, αριθμούς και χαρακτήρες υπογράμμισης.

Επαληθεύστε εάν περιέχει ^%&'; = $", κ.λπ.: "[^%&',; = $x 22]+"

Μπορούν να εισαχθούν μόνο κινεζικοί χαρακτήρες: "^[u4e00-u9fa5],{0,}$"

Επαλήθευση διεύθυνσης email: "^\w+[-+.] \w+)*@\w+([-.] \w+)*.\w+([-.] \w+)*$"

Επαληθεύστε τη διεύθυνση URL του Διαδικτύου:"^http://([\w-]+.) +[\w-]+(/[\w-./ %&=]*) $"

Ο αριθμός τηλεφώνου επαλήθευσης: "^((\d{3,4})|\d{3,4}-) \d{7,8}$" είναι σωστά μορφοποιημένος: "XXXX-XXXXXXX","XXXX-XXXXXXX","XXX-XXXXXXX", "XXX-XXXXXXX","XXXXXXXXXX".

Επαλήθευση αριθμού ταυτότητας (15 ή 18 ψηφία): "^d{15}|d{}18$"

Επικύρωση 12 μηνών του έτους: "^(0 [1-9]|1[0-2])$" Η σωστή μορφή είναι: "01"-"09" και "1""12"

31 ημέρες επικύρωσης για ένα μήνα: "^((0 [1-9])|( (1|2) [0-9])| Το 30|31)$" είναι σωστά μορφοποιημένο: "01", "09" και "1""31".





Προηγούμενος:Ο SQL Server δημιουργεί πίνακες Προσθήκη πρωτευόντων κλειδιών Προσθήκη στηλών Συχνά χρησιμοποιούμενες προτάσεις SQL
Επόμενος:Τρόπος λήψης της ιδιότητας Text ενός πλαισίου κειμένου στη στήλη προτύπου GridView
Δημοσιεύτηκε στις 16/5/2015 9:32:21 π.μ. |
Συχνά συγχέετε αυτούς τους ελέγχους
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com