Koray Kırdinli

Yazılım ve İş Yaşamı Hakkında Paylaşımlar

Sunucu Taraflı Validasyon

Aşağıdaki örnekteki gibi sınıfın üyelerine sunucu taraflı validasyon(doğrulama) yaptırabilirsiniz.Örneğin boş geçilemeyen bir değişken olmasını sağlamak için Required attribute(özellik)’ini veya RegularExpression ile bir pattern’e uyup uymadığını kontrol edebiliriz.Aşağıda örnek bir sınıfımız var. Bu özellikleri kullanabilmek için System.ComponentModel.DataAnnotations.dll ni projemize referans olarak ekleyip System.ComponentModel.DataAnnotations namespace’ini de sınıfımıza eklemeliyiz.

public class Product

{

public int ProductId { get; set; }

[Required(ErrorMessage = “The Product Name is required”)]

[StringLength(50, ErrorMessage = “The Product Name is too long”)]

public string ProductName { get; set; }

[Required(ErrorMessage = “The Product Number is required”)]

[RegularExpression(@”^[A-Z]+-[\w]*\d+[-]*[A-Z]*”, ErrorMessage = “The Product Number is not in the correct format”)]

[StringLength(25, ErrorMessage = “The Product Number is too long”)]

public string ProductNumber { get; set; }

[Required(ErrorMessage = “The Standard Cost is required”)]

[DataType(DataType.Currency, ErrorMessage = “The Standard Cost is not in the correct format”)]

[RegularExpression(@”^\$?\d+(\.(\d{2}))?$”, ErrorMessage = “The Standard Cost is not in the correct format”)]

[Range(0, 5000, ErrorMessage = “The Standard Cost must be between 0 and 5000”)]

public decimal StandardCost { get; set; }

[Required(ErrorMessage = “The List Price is required”)]

[DataType(DataType.Currency, ErrorMessage = “The List Price is not in the correct format”)]

[RegularExpression(@”^\$?\d+(\.(\d{2}))?$”, ErrorMessage = “The List Price is not in the correct format”)]

[Range(0, 5000, ErrorMessage = “The List Price must be between 0 and 5000”)]

public decimal ListPrice { get; set; }

[Required(ErrorMessage = “The Product Model is required”)]

public int ProductModel { get; set; }

[Required(ErrorMessage = “The Product Subcategory is required”)]

public int ProductSubcategory { get; set; }

}

September 12, 2012 - Posted by | C#, Yazılım | , , , ,

No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s