Asp.net’de en sık kullanılan kontrollerden olan validation kontrolleri javascript ile çalışan doğrulama kontrolleri olduğu için tarayıcıda javascript desteği olmadığında veya etkisizleştirildiğinde sunucu tarafında IsValid özelliğini kullanarak doğrulama kontrolü yapacağız.
IsValid ile sunucu taraflı doğrulama konrlollerinin kontrolünü yapma
Doğrulama kontrolleri javascipt tarafında doğrulama yaptığı için eğer tarayıcı özelliğinden javascipt etkisiz hale getirilirse veya javascipt yüklü değilse o zaman bir güvenli açığı doğmaktadır kısacası doğrulama kontrolleri client taraflı çalışan kontrollerdir. biz sunucu tarafında IsValid ile sayfanın doğrulanıp doğrulanmadığı kontrol edeceğiz.
Örnek Asp.Net kodlar
1 2 3 4 5 | <asp:TextBox runat="server" ID="TxtAd"></asp:TextBox> <asp:RequiredFieldValidator runat="server" ControlToValidate="TxtAd" ErrorMessage="Adı girmelisiniz"></asp:RequiredFieldValidator> <asp:TextBox runat="server" ID="TxtSoyad"></asp:TextBox> <asp:RequiredFieldValidator runat="server" ControlToValidate="TxtSoyad" ErrorMessage="Soyadı girmelisiniz"></asp:RequiredFieldValidator> <asp:Button runat="server" ID="BtnKaydet" OnClick="BtnKaydet_OnClick" Text="Kaydet"/> |
Üstteki kodlarda gördüğünüz gibi doğrulama kontrollerimiz kaydet butonuna tıkladığımızda çalışması gerekiyor ama belirtitğimiz gibi tarayıcıda javascript desteği yoksa veya etikisiz hale getirilmişse o zaman alttaki sunucu tarafında yazılan kod ile sayfanın doğrulanıp doğrulanmadığını IsValid özelliği ile kolayca öğrenebilirsiniz.
Örnek sunucu taraflı yazılan kod
1 2 3 4 5 6 7 8 9 | protected void BtnKaydet_OnClick(object sender, EventArgs e) { if (!IsValid) { Response.Write("<font color="red"><strong>Doğrulama yapılamadı.</strong></font>"); return; } Response.Write("<font color="green"><strong>Doğrulama başarıyla gerçekleşti.</strong></font>"); } |
Üstteki kod ile tarayıcıda javascript özelliği iptal edilmiş olsa bile sunucu tarafında sayfanın doğrulanıp doğrulanmadığını IsValid özelliği ile kolayca öğrenebilmekteyiz.