Validatsiya — bu, foydalanuvchi yoki tizimdan kelgan ma’lumotlar to‘g‘ri qabul qilinadiganligini tekshirish jarayoni.
Misol: Email noto‘g‘ri formatda yoki Ism bo‘sh bo‘lsa, bu xatolik deb hisoblanadi.
| Xususiyat | FluentValidation | DataAnnotation |
|---|---|---|
| Sintaksis | O‘qishga qulay, ketma-ket yoziladi | [Attribute] orqali |
| Qayta foydalanish | Albatta mumkin | Cheklangan |
| Testlash | Oson, chunki validator alohida klass | Qiyinroq |
| Moslashtirish | Katta imkoniyatlar (Must, When) |
Cheklangan |
-
Paket o‘rnatiladi:
dotnet add package FluentValidation
-
Model uchun validator yaratiladi:
public class UserValidator : AbstractValidator<User> { public UserValidator() { RuleFor(x => x.Name).NotEmpty(); } }
-
So‘ng
Validate()orqali tekshiriladi.
NotEmpty(),EmailAddress(),InclusiveBetween()— tayyor qoidalarWithMessage()— xatolik matnini sozlashEqual(),Matches()— solishtirishMust()— o‘zingiz yozgan funksiya bilan tekshirishWhen()— shartli validatsiyaCascadeMode.Stop— birinchi xatoda to‘xtatish
FluentValidation.AspNetCorepaketini o‘rnatingProgram.csdaAddFluentValidation()bilan sozlang- Validatorlar avtomatik ishlaydi (
ModelState.IsValidbilan)
- Modulli va testga qulay
- Murakkab validatsiyalarni soddalashtiradi
- Kodni toza va tartibli saqlashga yordam beradi
Agar siz katta, jiddiy loyihalarda validatsiyani mustaqil, test qilinadigan, moslashuvchan holatda boshqarmoqchi bo‘lsangiz — FluentValidation eng to‘g‘ri tanlovdir.