4 Temmuz 2015 Cumartesi

MVC ile programlama tarafında tek alan için validation kontrolü

MVC projemizde bazen çalışmış olduğumuz class içerisinde 1'den fazla validation kontrolü olabilmekte ama arama gibi sayfalarda ihtiyaç duyulan genellikle tek alandır bizde bu makalemizde tek alan için yapılabilecek validation kontrolünü göreceğiz.
Alttaki örnek validation sınıfımızın olduğunu varsayalım.
01public class NewsValidation
02{
03    [Required]
04    [Display(Name = "Ad")]
05    public string Name { getset; }
06    [Required]
07    [Display(Name = "Kategori")]
08    public int CatId { getset; }
09    [Display(Name = "Onay Durumu")]
10    public bool Approve { getset; }
11}
Örnek olarak arama sayfasında Name alanını kullanacağız fakat Model.IsValid doğrulaması yapıldığında CadId alanıda Required attribut'ü ile zorunlu tutulduğu için bu alan içinde giriş yapılması istenecek. bu durumu aşmak için alttaki gibi bir kod işinizi görecektir.
1[HttpPost]
2public ActionResult Search(Category cat)
3{
4    if (!ModelState.IsValidField("Name"))
5    {
6        return View(cat);
7    }
8    return RedirectToAction("Index");
9}
!ModelState.IsValidField("Name") kodu ile demek istediğimiz Name alanı eğer doğrulamayı geçmediyse bize gönderilen sonucu geri gönder kullanıcıya taki Name alanına doğrulamada belirtilen doğru değeri girene kadar.

Hiç yorum yok: