Sistem bisnis kami melibatkan banyak pengeditan formulir dan verifikasi. Cara paling sederhana adalah dengan menggunakan kontrol verifikasi data yang disertakan dengan asp.net, namun ini memiliki tiga masalah berikut:
1. Kontrol verifikasi harus disertakan dalam desain Menambahkannya. ke formulir dan pengaturan atribut secara manual seperti tipe data, pesan kesalahan, dll. cukup merepotkan.
2 Untuk kotak masukan, kita mungkin harus mencentang beberapa item, seperti: wajib diisi, harus dalam format tanggal, dan harus lebih besar dari 1-1-2007. Ini memerlukan penambahan beberapa kontrol validasi.
3 Aturan dan formulir bisnis terikat satu sama lain, sehingga tidak kondusif untuk pemeliharaan dan penggunaan kembali.
Fungsi verifikasi yang kita harapkan adalah:
1. Aturan verifikasi dipisahkan dari form. Cukup gambarkan kotak input pada form. Kontrol verifikasi akan dibuat secara dinamis sesuai dengan file konfigurasi saat runtime.
2 Menurut aturan verifikasi, pesan prompt default dihasilkan: tidak boleh kosong, tipe nomor salah, harus antara 1 dan 100.
3 Ekspresi aturan validasi yang fleksibel: seperti: range(1, 200), >=0.5, Mail(), Mobile(). Saat ini, kondisi seperti dan, atau tidak
didukung
, namun dapat dengan mudah diperpanjang.Oleh karena itu, kami telah merangkum bagian fungsi ini. Saat menggunakannya, Anda hanya perlu
mengatur yang berikut ini di file xml: nama kontrol, tipe data, apakah diperlukan, dan informasi ekspresi verifikasi.
Berikut kutipannya:
Dalam acara Page_Init halaman, panggil metode kelas:
ValidateHelper.LoadFromFile("verifikasi data_configuration.xml") dapat digunakan.
Desain kelas:
//Kelas informasi konfigurasi
kelasValidateInfo
{
string publik Nama Kontrol;
Tipe Data ValidasiDataType publik;
pesan kesalahan string publik;
bool publik Membutuhkan;
Ekspresi string publik;
}
//Pabrik pembuatan kontrol validasi
ValidatorFactory kelas publik
{
CreateRequiredFieldValidator();
CreateDateTypeCheckValidator();
CreateRangeValidator(string min, string maks);
CreateCompareValidator(operator ValidationCompareOperator, string valueToCompare);
...
}
// Pengurai aturan verifikasi, membuat kontrol verifikasi berdasarkan informasi konfigurasi
ValidatorParser kelas publik
{
Parse (info ValidasiInfo, pabrik ValidatorFactory);
...
}
// Baca informasi konfigurasi dan ikat kontrol verifikasi ke formulir
ValidateHelper kelas publik
{
LoadFromFile(Halaman halaman, string nama file)
}