Ejemplo n.º 1
0
        protected ValidatableViewModel(IErrorsContainer <ValidationError> errorsContainer, ArrayFormat errorFormat = ArrayFormat.First)
        {
            ErrorsContainer = errorsContainer;
            ErrorsContainer.ErrorsChanged += OnErrorsChanged;

            dataErrorInfoProvider = new DataErrorInfoProvider(ErrorsContainer, errorFormat, ObjectErrorPropertyName);
        }
Ejemplo n.º 2
0
        public DataErrorInfoProvider(IErrorsContainer <TError> errorsContainer, Func <IEnumerable <TError>, string> errorsFormatter, string objectPropertyName = "")
        {
            Contract.Requires <ArgumentNullException>(errorsContainer != null, "errorsContainer");
            Contract.Requires <ArgumentNullException>(objectPropertyName != null, "objectPropertyName");
            Contract.Requires <ArgumentNullException>(errorsFormatter != null, "errorsFormatter");

            ObjectPropertyName = objectPropertyName;
            ErrorsContainer    = errorsContainer;
            ErrorsFormatter    = errorsFormatter;
        }
Ejemplo n.º 3
0
        public static void ClearErrors <TError, TProperty>(this IErrorsContainer <TError> errorsContainer, Expression <Func <TProperty> > propertySelector)
            where TError : ValidationError
        {
            Ensure.NotNull(errorsContainer);
            Ensure.NotNull(propertySelector);

            string propertyName = ExpressionUtils.GetPropertyName(propertySelector);

            errorsContainer.ClearErrors(propertyName);
        }
Ejemplo n.º 4
0
        public static IEnumerable <TError> GetErrors <TError, TProperty>(this IErrorsContainer <TError> errorsContainer, Expression <Func <TProperty> > propertySelector)
            where TError : ValidationError
        {
            Ensure.NotNull(errorsContainer);
            Ensure.NotNull(propertySelector);

            string propertyName = ExpressionUtils.GetPropertyName(propertySelector);

            return(errorsContainer.GetErrors(propertyName));
        }
Ejemplo n.º 5
0
        public static void ClearAndSetErrors <TError>(this IErrorsContainer <TError> errorsContainer, IEnumerable <TError> errors)
            where TError : ValidationError
        {
            Ensure.NotNull(errorsContainer);

            errorsContainer.ClearAllErrors();;
            if (!errors.IsNullOrEmpty())
            {
                errorsContainer.SetErrors(errors);
            }
            ;
        }
Ejemplo n.º 6
0
        public static void ClearErrors <TError, TEntity, TProperty>(
            this IErrorsContainer <TError> errorContainer, Expression <Func <TEntity, TProperty> > propertyExpression)
            where TError : ValidationError
        {
            if (propertyExpression == null)
            {
                throw new ArgumentNullException("propertyExpression");
            }

            string propertyName = ExpressionUtils.GetPropertyName(propertyExpression);

            errorContainer.ClearErrors(propertyName);
        }
Ejemplo n.º 7
0
 public DataErrorInfoProvider(IErrorsContainer <TError> errorsContainer, ArrayFormat arrayFormat = ArrayFormat.First, string objectPropertyName = "")
     : this(errorsContainer, ArrayFormatter.GetErrorFormatter(arrayFormat) as Func <IEnumerable <TError>, string>, objectPropertyName)
 {
 }