কম্পিউটার

C# তে সাবলীল ভ্যালিডেশন ব্যবহার করে জন্ম তারিখ কিভাবে বৈধ করা যায় যদি তা চলতি বছরের বেশি হয়?


একটি নির্দিষ্ট সম্পত্তির জন্য একটি বৈধতা নিয়ম নির্দিষ্ট করতে, RuleFor পদ্ধতিতে কল করুন, একটি ল্যাম্বডা এক্সপ্রেশন পাস করে যে সম্পত্তিটি আপনি যাচাই করতে চান তা নির্দেশ করে

RuleFor(p => p.DateOfBirth)

ভ্যালিডেটর চালানোর জন্য, ভ্যালিডেটর অবজেক্টকে ইনস্ট্যান্টিয়েট করুন এবং ভ্যালিডেট মেথড কল করুন, ভ্যালিডেট করার জন্য অবজেক্টটি পাস করুন।

ValidationResult ফলাফল =validator.Validate(person);

Validate পদ্ধতি একটি ValidationResult বস্তু প্রদান করে। এতে দুটি বৈশিষ্ট্য রয়েছে

ইজ্যালিড৷ - একটি বুলিয়ান যা বলে যে বৈধতা সফল হয়েছে কিনা৷

ত্রুটি - যেকোন বৈধতা ব্যর্থতা সম্পর্কে বিশদ বিবরণ ধারণকারী ValidationFailure অবজেক্টের একটি সংগ্রহ

উদাহরণ 1

static void Main(string[] args) {
   List errors = new List();

   PersonModel person = new PersonModel();
   person.FirstName = "TestUser";
   person.LastName = "TestUser";
   person.AccountBalance = 100;
   person.DateOfBirth = DateTime.Now.Date.AddYears(1);

   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.DateOfBirth)
      .Must(BeAValidAge).WithMessage("Invalid {PropertyName}");
   }

   protected bool BeAValidAge(DateTime date){
      int currentYear = DateTime.Now.Year;
      int dobYear = date.Year;

      if (dobYear <= currentYear && dobYear > (currentYear - 120)){
         return true;
      }

      return false;
   }
}

আউটপুট

Invalid Date Of Birth

  1. জাভাস্ক্রিপ্ট ব্যবহার করে বর্তমান তারিখ এবং সময় কিভাবে পেতে হয়?

  2. কিভাবে জাভাস্ক্রিপ্ট বর্তমান বছর পেতে?

  3. জাভাস্ক্রিপ্ট ব্যবহার করে মৌলিক ফর্ম বৈধতা কিভাবে করবেন?

  4. ইয়ার এপিআই ক্লাস ব্যবহার করে অ্যান্ড্রয়েডে কীভাবে বছর পেতে হয়?