Exemplo n.º 1
0
        /// <inheritdoc />
        public override string GetRestrictionValue(RestrictionField restrictionField)
        {
            switch (restrictionField)
            {
            case RestrictionField.MinExclusive:
                return(MinExclusive.ToString());

            case RestrictionField.MaxExclusive:
                return(MaxExclusive.ToString());

            case RestrictionField.MinInclusive:
                return(MinInclusive.ToString());

            case RestrictionField.MaxInclusive:
                return(MaxInclusive.ToString());

            default:
                return(base.GetRestrictionValue(restrictionField));
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Gets the restriction value in string in CultureInfo.CurrentUICulture.
        /// </summary>
        /// <param name="restrictionField">The facet to be retrieved.</param>
        /// <returns>The value in string.</returns>
        public virtual string GetRestrictionValue(RestrictionField restrictionField)
        {
            switch (restrictionField)
            {
            case RestrictionField.Pattern:
                return(Pattern);

            case RestrictionField.Length:
                return(Length.ToString(CultureInfo.CurrentUICulture));

            case RestrictionField.MinLength:
                return(MinLength.ToString(CultureInfo.CurrentUICulture));

            case RestrictionField.MaxLength:
                return(MaxLength.ToString(CultureInfo.CurrentUICulture));

            default:
                Debug.Assert(false);
                return(string.Empty);
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// Validate the value to all the constraints.
        /// </summary>
        /// <param name="attributeValue">The value to be validated.</param>
        /// <returns>An bit flag, a bit is set on if the corresponding constraint is failed.</returns>
        public RestrictionField Validate(OpenXmlSimpleType attributeValue)
        {
            RestrictionField resultFlag = RestrictionField.None;

            if ((RestrictionField & RestrictionField.Pattern) == RestrictionField.Pattern)
            {
                if (!IsPatternValid(attributeValue))
                {
                    resultFlag |= RestrictionField.Pattern;
                }
            }

            if ((RestrictionField & RestrictionField.Length) == RestrictionField.Length)
            {
                if (!IsLengthValid(attributeValue))
                {
                    resultFlag |= RestrictionField.Length;
                }
            }

            if ((RestrictionField & RestrictionField.MinLength) == RestrictionField.MinLength)
            {
                if (!IsMinLengthValid(attributeValue))
                {
                    resultFlag |= RestrictionField.MinLength;
                }
            }

            if ((RestrictionField & RestrictionField.MaxLength) == RestrictionField.MaxLength)
            {
                if (!IsMaxLengthValid(attributeValue))
                {
                    resultFlag |= RestrictionField.MaxLength;
                }
            }

            if ((RestrictionField & RestrictionField.MinInclusive) == RestrictionField.MinInclusive)
            {
                if (!IsMinInclusiveValid(attributeValue))
                {
                    resultFlag |= RestrictionField.MinInclusive;
                }
            }

            if ((RestrictionField & RestrictionField.MinExclusive) == RestrictionField.MinExclusive)
            {
                if (!IsMinExclusiveValid(attributeValue))
                {
                    resultFlag |= RestrictionField.MinExclusive;
                }
            }

            if ((RestrictionField & RestrictionField.MaxInclusive) == RestrictionField.MaxInclusive)
            {
                if (!IsMaxInclusiveValid(attributeValue))
                {
                    resultFlag |= RestrictionField.MaxInclusive;
                }
            }

            if ((RestrictionField & RestrictionField.MaxExclusive) == RestrictionField.MaxExclusive)
            {
                if (!IsMaxExclusiveValid(attributeValue))
                {
                    resultFlag |= RestrictionField.MaxExclusive;
                }
            }

            return(resultFlag);
        }