Asp.NET ‘te kullanıcıdan alınan bilgileri kontrol etmek için form doğrulama kontrolleri mevcut. Oluşturacağınız formlarda zorunlu alanlar(kullanıcı adı, mail), belli aralıkta veri girilebilen bölümler(yaş, not), karşılaştırılan alanlar(şifre tekrarları), uygun ifade biçimleri(mailllerdeki @ işareti ve .com uzantısı ) gibi alanlar olacaktır. İşte tüm bu kontrolleri yapmak için Validation Controls yani form doğrulama kontrolleri kullanılır. Bu dersimizde bu kontrolleri yine örneklerle beraber ele alacağız. Dersin sonunda bu kontrolleri anlatan bir de video var.
Sayfamıza form doğrulama kontrollerini eklemek için Dreamweaverda ASP.NET sekmesindeki more tags butonuna tıklayın. Validation Server Controls (Doğrulama Sunucu Kontrolleri ) bölümüne gelin. Şimdi bu bölümdeki kontrolleri inceleyelim kullanımlarını videoda anlatacağız.
1- asp:RequiredFieldValidator :
(Required : Gerekli , Field : Alan , Validator : Onaylayıcı,tasdik edici)
Bu kontrolle metin kutularına bilgi girilmesi zorunlu hale getirilir.
<asp:RequiredFieldValidator ControlToValidate=”textbox1″ ID=”adi” runat=”server” Text=”Adınızı Giriniz”/> kodu ile sayfaya eklenir. ControlToValidate özelliğine hangi alanı kontrol edeceğimizi yazıyoruz. Kontrol edilen alan textbox, checkbox(list), radiobutton(list), gibi kontroller olabilir. Text özelliğine hata mesajını yazıyoruz.
2- asp:CompareValidator:
(Compare : Karşılaştırma)
Kullanıcının girdiği değer ile başka bir değeri karşılaştırmak için kullanılır.
<asp:CompareValidator ControlToCompare=”textbox1″ ControlToValidate=”textbox2″ ID=”sifrekontrol” Operator=”Equal” runat=”server” Text=”Şifreler Uyuşmuyor” Type=”String” /> koduyla sayfaya eklenir.
ControlToCompare ve ControlToValidate özelliklerine karşılaştıracağımız alanları yazıyoruz. Operator özelliği, karşılaştırılan alanların birbiriyle eşit mi?, biri diğerinden büyük mü veya küçük mü? şeklinde karşılaştırma yapar. Type özelliği ise karşılaştırılan alanların sayı, yazı şeklinde mi karşılaştırılacağını belirler.
Equal : eşit
NotEqual: eşit değil
GreaterThan: -den büyük
GreaterThanEqual: -den büyük eşit
LessThan : -den küçük
LessThanEqual: -den küçük eşit
3- asp:RangeValidator:
(Range : Arasında olma)
Kullanıcının belirtilen aralıkta değerler girmesini sağlar.
<asp:RangeValidator ControlToValidate=”textbox1″ ID=”notkontrol” MaximumValue=”100″ MinimumValue=”0″ runat=”server” Text=”0-100 arasında not yazınız” /> kodu ile sayfaya eklenir.
MaximumValue özelliğine enbüyük değer, MinimumValue özelliğine en küçük değer yazılır.
4- asp:RegularExpressionValidator:
(Regular : Uygun/düzgün , Expression : ifade )
Bilginin belli bir biçimde girilmesi sağlar.
<asp:RegularExpressionValidator ControlToValidate=”textbox1″ ID=”mailkontrol” runat=”server” Text=”Mail adresi Yanlış” ValidationExpression=”[a-zA-Z0-9]+@[a-zA-Z0-9]+\.[a-zA-Z0-9]+” /> koduyla sayfaya eklenir.
Bu kontrolde ValidationExpression özelliğine mail adresi kontrolü için yukarıdaki değerler yazılır. Bu değerler hazır değerlerdir. Dreamweaverda bu hazır değerleri ekleyebileceğimiz bir özellik yok. Visual Web Developer programında ise bu hazır değerler mevcuttur. İnternet adresleri için “http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?” değerini kullanabiliriz.
5- asp:CustomValidator:
(Custom : Özel,kişiselleştirilmiş)
Web geliştiricinin istediği bir geçerlilik denetleme yöntemi belirlemesini sağlar. Örneğin, sadece tek sayıların veya çift sayıların girişine izin verme gibi.
6- asp:ValidationSummary:
(Summary : özet)
Formda oluşan tüm hataları ve hata mesajları gibi bilgileri tutar.
<asp:ValidationSummary HeaderText=”Şu Hatalar Oluştu” ID=”hataozeti” runat=”server” /> koduyla sayfaya eklenir.
Şimdi bu kontrolleri Dreamweaver ‘da nasıl kullanacağımızı gösteren video anlatımına bakalım.







Haziran 24th, 2010 at 12:49
Kaydet Butonuna Bi Özellik Eklenmicekmi ya ?
Haziran 24th, 2010 at 13:03
Kaydet butonuna kayıt kodlarının bulunduğu kod bölümüne gitmesi için onclick=”kaydet” gibi bir şey yazmamız gerek tabi. Ama sadece doğrulama kontrollerini denemek için buna gerek yok.
Haziran 30th, 2011 at 11:35
Ben şunu istiyorum. Kaydet butonuna bastığında eğer girilmesi zorunlu kıldığım alanlar varsa ve onlardan biri dahi girilmediyse kaydet butonun işlev görmemesini istiyorum.Yada söyle düşünürsek birden çok buton var ve ben bu kontorollerin yalnızca bir butonda etkin olmasını diğer bir butona tıkladığında o kontrollerin onda geçerli olmamasını istiyorum tüm bu ayarlamalar nasıl yapılıyor.Range validatorun hangi olayda tetikleneceğini nasıl belirliyoruz