سبد خرید 0

وبلاگ

اعتبارسنجی های سفارشی در ASP.NET MVC

در ASP.NET MVC برای اعتبارسنجی های سمت سرور می توانیم از Data Annotation ها که قابلیت فعال سازی آنها در سمت کلاینت هم امکان پذیری می باشد ، استفاده کنیم . اکثر اوقات Attribute های  فضای نام System.ComponentModel.DataAnnotations پاسخ گوی نیاز ما هستند هر چند کتابخانه هایی هم در سطح اینترنت موجود هستند که قابلیت ها و توانایی های بیشتر را در اختیار شما قرار میدهند که دو مورد زیر دو نمونه از آنها می باشند :

  1. FluentValidation
  2. foolproof

در شرایط ممکن است نیاز داشته باشیم خود ورودی های کاربر را اعتبار سنجی کنیم ، به طور مثال سایت های چند زبانه نمونه ای از آن می باشد .

کلاس Article زیر را که یک نمونه از سایت های دو زبانه می باشد در نظر بگیرید :

منطق ما به این صورت است که  اگر کاربر از dropdown  زبان گزینه فارسی را انتخاب کرد فقط فیلد های مربوط به فارسی را اعتبار سنجی کنیم و  برای انگلیسی هم همینطور و اگر هر دو را انتخاب کرد تمام فیلد های ورودی را اعتبارسنجی کنیم .

برای نوشتن اعتبارسنجی های سفارشی ابتدا فضای نام زیر را اضافه نمایید :

کلاسی تحت عنوان AddArticleVlidation به صورت زیر ایجاد کنید :


برای نوشتن اعتبارسنجی های سفارشی باید از کلاس ValidationAttribute به صورت زیر ارث بری کرده و متد IsValid را بازنویسی کنیم :

کلاس AddArticleVlidation را به هر کلاسی اعمال کنیم ، در هنگام اعتبارسنجی،  آن کلاس به متد IsValid پاس داده می شود ، پس ما در اولین مرحله نیز به یک تبدیل داریم به صورت زیر :

کدهای لازم برای اعتبار سنجی به صورت زیر خواهد بود :

کار لازم جهت اعتبارسنجی به اتمام رسید فقط کافیست کلاس فوق را به کلاس مورد نظر به صورت زیر اعمال کنیم :


 

اشتراک گذاری:

مطالب زیر را حتما مطالعه کنید

دیدگاهتان را بنویسید

keyboard_arrow_up