تعداد ویدئو | 56 |
---|---|
زمان دوره | 03:41:35 |
مترجم | پرووید |
ناظر ترجمه | پرووید |
دوبلر | پرووید |
ناظر دوبلاژ | پرووید |
سایت منتشر کننده | پلورال سایت |
آموزش کار با FluentValidation Fundamentals در سی شارپ یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته ی آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه ی فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته ی آموزشی مباحث Validation در Domain Driven Design است که با نام اصلی FluentValidation Fundamentals از شرکت Pluralsightمنتشر شده است.
اعتبارسنجی ورودی یا Input Validation یک مبحث گسترده و پیچیده است و اغلب مشخص نیست از چه ابزارهایی استفاده می کنیم. اما بهترین شیوه ها را در این زمینه دنبال کنیم. در دوره پیش رو یاد می گیرید که چگونه در برنامه های ASP.NET Core اعتبارسنجی کنید. ابتدا ویژگی های کتابخانه FluentValidation را کشف می کنید. سپس نحوه ترکیب آنها با بهترین شیوه های DDD را کشف خواهید کرد. در نهایت، نحوه استفاده از ویژگی ها را به عنوان جایگزین کتابخانه خواهید آموخت. پس از اتمام این دوره، مهارت ها و دانش اعتبارسنجی و کتابخانه FluentValidation مورد نیاز برای انجام اعتبارسنجی در هر برنامه ASP.NET Core را خواهید داشت.
به عبارت دیگر FluentValidation یک کتابخانه دات نت برای ایجاد قوانین تأیید اعتبار قوی است که از رابط کاربری روان و عبارات lambda برای ایجاد قوانین اعتبار سنجی استفاده می کند. این به پاکسازی کد دامنه و انسجام بیشتر آن کمک می کند، همچنین به شما یک مکان واحد برای جستجوی منطق اعتبار سنجی می دهد. به مثال زیر نگاه کنید:
static class Program {
static void Main (string[] args) {
List errors = new List();
PersonModel person = new PersonModel();
person.FirstName = "";
person.LastName = "S";
person.AccountBalance = 100;
person.DateOfBirth = DateTime.Now.Date;
PersonValidator validator = new PersonValidator();
ValidationResult results = validator.Validate(person);
if (results.IsValid == false) {
foreach (ValidationFailure failure in results.Errors) {
errors.Add(failure.ErrorMessage);
}
}
foreach (var item in errors) {
Console.WriteLine(item);
}
Console.ReadLine ();
}
}
public class PersonModel {
public string FirstName { get; set; }
public string LastName { get; set; }
public decimal AccountBalance { get; set; }
public DateTime DateOfBirth { get; set; }
}
public class PersonValidator : AbstractValidator {
public PersonValidator(){
RuleFor(p => p.FirstName)
.Cascade(CascadeMode.StopOnFirstFailure)
.NotEmpty().WithMessage("{PropertyName} is Empty")
.Length(2, 50).WithMessage("Length ({TotalLength}) of {PropertyName} Invalid")
.Must(BeAValidName).WithMessage("{PropertyName} Contains Invalid Characters");
RuleFor(p => p.LastName)
.Cascade(CascadeMode.StopOnFirstFailure)
.NotEmpty().WithMessage("{PropertyName} is Empty")
.Length(2, 50).WithMessage("Length ({TotalLength}) of {PropertyName} Invalid")
.Must(BeAValidName).WithMessage("{PropertyName} Contains Invalid Characters");
}
protected bool BeAValidName(string name) {
name = name.Replace(" ", "");
name = name.Replace("-", "");
return name.All(Char.IsLetter);
}
}
خروجی کد بالا بصورت زیر می باشد:
First Name is Empty
Length (1) of Last Name Invalid
فصل اول: معرفی این دوره آموزشی
فصل دوم: مقدمه دوره و آشنایی اولیه این دوره
فصل سوم: اعتبارسنجی Input با FluentValidation
فصل چهارم: بررسی دقیق تر FluentValidation
فصل پنجم: Validate کردن ورودی به روش DDD
فصل ششم: ترکیب FluentValidation با الگوهای DDD
فصل هفتم: بررسی دقیق تر DDD و Validation
تمامی حقوقی مادی و معنوی متعلق به گروه آموزشی پرووید است.
نقد و بررسیها
هیچ دیدگاهی برای این محصول نوشته نشده است.