Example #1
0
 public CreateModelValidator(IRepositoryReader <Data.Entities.ClassPeriod> repositoryReader)
 {
     RuleFor(model => model.ClassPeriodName).Must(classPeriodName =>
     {
         Expression <Func <Data.Entities.ClassPeriod, bool> > expression = entity => entity.ClassPeriodName == classPeriodName;
         return(repositoryReader.DoesRepositoryReturnNullFor(classPeriodName, expression));
     }).WithMessage("This period name already exists.");
 }
Example #2
0
        public CreateModelValidator(IRepositoryReader <Data.Entities.Course> repositoryReader)
        {
            RuleFor(model => model.ParentCourseId).NotEmpty();
            RuleFor(model => model.CourseCode).NotEmpty().Length(1, 60);
            RuleFor(model => model.CourseTitle).NotEmpty().Length(1, 60);
            RuleFor(model => model.NumberOfParts).NotEmpty();
            RuleFor(model => model.AcademicSubject).NotEmpty();
            RuleFor(model => model.CourseDescription).Length(0, 20);

            RuleFor(model => model.CourseCode).Must(courseCode =>
            {
                Expression <Func <Data.Entities.Course, bool> > expression = entity => entity.CourseCode == courseCode.Trim();
                return(repositoryReader.DoesRepositoryReturnNullFor(courseCode, expression));
            }).WithMessage("This course already exists.");
        }
Example #3
0
        public CreateStudentModelValidator(IRepositoryReader <Data.Entities.Student> repositoryReader)
        {
            RuleFor(csm => csm.StudentUsi).NotNull();
            RuleFor(csm => csm.FirstName).NotEmpty().Length(1, 75);
            RuleFor(csm => csm.LastName).NotEmpty().Length(1, 75);
            RuleFor(csm => csm.Address).NotEmpty().Length(1, 150);
            RuleFor(csm => csm.Address2).Length(0, 20);
            RuleFor(csm => csm.City).NotEmpty().Length(1, 30);
            RuleFor(csm => csm.Sex).NotNull();
            RuleFor(csm => csm.BirthDate).NotNull();
            RuleFor(csm => csm.Race).NotNull();
            RuleFor(csm => csm.State).NotNull();
            RuleFor(csm => csm.PostalCode).NotEmpty().Length(1, 17);
            RuleFor(csm => csm.HomeLanguage).NotNull();
            RuleFor(csm => csm.FirstParent).SetValidator(new CreateParentModelValidator());

            RuleFor(model => model.StudentUsi).Must(usi =>
            {
                Expression <Func <Data.Entities.Student, bool> > expression = entity => entity.StudentUSI == usi;
                return(repositoryReader.DoesRepositoryReturnNullFor(usi, expression));
            }).WithMessage("A student with this USI already exists. Please go to the student's profile to enter academic details or program status.");

            When(csm => csm.AddSecondParent, () => RuleFor(csm => csm.SecondParent).SetValidator(new CreateParentModelValidator()));
        }