コード例 #1
0
        public static ValidationErrors Value(object target)
        {
            if (target == null)
            {
                throw new ArgumentNullException("target");
            }

            // Self validation should be tried first; then the validator should be created
            ISelfValidation sv = target.Adapt <ISelfValidation>();

            if (sv != null)
            {
                return(sv.Validate());
            }

            Validator v = Validator.CreateSelfValidator(target.GetType());

            if (v != null)
            {
                return(v.Validate(target));
            }

            v = Validator.Create(target.GetType());
            if (v != null)
            {
                return(v.Validate(target));
            }

            throw ValidationFailure.ValidationNotDefined();
        }
コード例 #2
0
        public override ValidationErrors Validate(object target)
        {
            if (target == null)
            {
                return(ValidationErrors.None);
            }

            ISelfValidation s = target as ISelfValidation;

            if (s == null)
            {
                throw Failure.NotInstanceOf("target", target.GetType(), typeof(ISelfValidation));
            }

            return(s.Validate());
        }