示例#1
0
 public void AddErrors(ValidationBase item)
 {
     if (item != null)
     {
         AddErrors(item.ValidationErrors);
     }
 }
        // public ValidationException(string message, ValidationException other) : this(other.ValidatedObject)
        // {
        // }

        /// <summary>
        /// Initializes a new instance of the ValidationException class.
        /// </summary>
        /// <param name="validatedObject">The validated object containing the list of ValidationErrors that contributed to the exception.</param>
        public ValidationException(ValidationBase validatedObject)
            : base($@"Exception in validation of {validatedObject.GetType().FullName}
({ObjectUtils.PropertiesToString(validatedObject)}):
{Environment.NewLine}                
{string.Join(Environment.NewLine, validatedObject.ValidationErrors.Select(
    e => (e.Source != null && e.Source != validatedObject ? (e.Source.GetType().FullName + ": "): "") + GetErrorMessage(e)))}")
        {
            ValidatedObject = validatedObject;
        }
示例#3
0
        protected void AddErrorForInsertOrUpdate(ValidationBase validationObject, string memberName)
        {
            if (validationObject != null)
            {
                var memberNames = new List <string>(Errors.ParentPropertyNames);
                if (!string.IsNullOrEmpty(memberName))
                {
                    memberNames.Add(memberName);
                }

                var localValidationErrors = validationObject.Validate(memberNames);
                if (localValidationErrors != null && localValidationErrors.Count > 0)
                {
                    Errors.ValidationErrors.AddRange(localValidationErrors);
                }
            }
        }