Kontrol validasi menguji input pengguna, mengatur status kesalahan, dan menghasilkan pesan kesalahan. Mereka tidak mengubah alur pemrosesan halaman, misalnya, mereka tidak melewatkan kode ketika kesalahan input pengguna terdeteksi. Sebagai gantinya, Anda akan menguji status kontrol dalam kode sebelum menjalankan logika spesifik aplikasi Anda. Jika kesalahan terdeteksi, kode Anda sendiri tidak akan berjalan; halaman akan melanjutkan pemrosesan dan dikembalikan ke pengguna dengan pesan kesalahan.
Catatan Keamanan: Secara default, halaman web ASP.NET secara otomatis memverifikasi apakah pengguna jahat mencoba mengirim skrip atau elemen HTML ke aplikasi Anda.
Anda dapat menguji status keseluruhan halaman secara umum, dan Anda dapat menguji status kontrol individual. Biasanya, Anda melakukan ini di event handler yang Anda buat untuk halaman tersebut.
1. Uji status kesalahan umum
Dalam kode Anda, uji properti IsValid halaman. Properti ini akan mengakumulasi nilai properti IsValid dari semua kontrol validasi pada halaman (menggunakan logika AND). Jika ada kontrol validasi yang disetel ke tidak valid, properti halaman akan menghasilkan false.
Deskripsi: Informasi autentikasi tidak tersedia selama fase inisialisasi atau pemuatan halaman. Namun, Anda dapat memanggil metode Validasi secara manual selama Page_Load dan kemudian menguji properti IsValid halaman tersebut.
Contoh kode berikut mendemonstrasikan event handler untuk sebuah tombol. Kode ini menguji properti IsValid halaman. Perhatikan bahwa klausa lain tidak diperlukan di sini karena halaman akan secara otomatis kembali ke browser dan kontrol validasi akan menampilkan pesan kesalahannya sendiri.
void Button1_Click(pengirim objek, System.EventArgs e)
{
jika (Apakah Valid)
{
// Lakukan pembaruan database atau logika lainnya di sini.
}
}
2. Uji status kesalahan masing-masing kontrol
Pelajari koleksi Validator halaman, yang berisi referensi ke semua kontrol validasi. Anda kemudian dapat memeriksa properti IsValid dari setiap kontrol validasi.
Catatan: Jika Anda ingin melakukan pemeriksaan ini selama Page_Load, Anda harus memanggil metode Validasi secara manual terlebih dahulu.
Contoh kode berikut menunjukkan cara mendapatkan status kontrol validasi tunggal.
jika (ini.IsPostBack)
{
ini.Validasi();
if (!ini.IsValid)
{
pesan string = "";
// Ulangi semua kontrol validasi untuk melihat yang mana
// menghasilkan kesalahan.
foreach (IValidator aValidator di sini.Validator)
{
jika (!aValidator.IsValid)
{
pesan += "<br />" + aValidator.ErrorMessage;
}
}
Label1.Teks = pesan;
}
}
Artikel ini berasal dari blog CSDN. Harap sebutkan sumbernya saat mencetak ulang: http://blog.csdn.net/dodream/archive/2009/12/17/5024643.aspx
-