コード例 #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ConfigurationValidatedElement"/> class for a field.
 /// </summary>
 /// <param name="validatedFieldReference">The field reference configuration object.</param>
 /// <param name="fieldInfo">The field.</param>
 public ConfigurationValidatedElement(ValidatedFieldReference validatedFieldReference, FieldInfo fieldInfo)
 {
     UpdateFlyweight(validatedFieldReference, fieldInfo);
 }
コード例 #2
0
        /// <summary>
        /// Updates the flyweight for a field.
        /// </summary>
        /// <param name="validatedFieldReference">The field reference configuration object.</param>
        /// <param name="fieldInfo">The field.</param>
        public void UpdateFlyweight(ValidatedFieldReference validatedFieldReference, FieldInfo fieldInfo)
        {
            if (fieldInfo == null) throw new ArgumentNullException("fieldInfo");

            this.UpdateFlyweight(validatedFieldReference, fieldInfo, fieldInfo.FieldType);
        }
コード例 #3
0
        /// <summary>
        /// This member supports the Enterprise Library infrastructure and is not intended to be used directly from your code.
        /// </summary>
        public Validator CreateValidatorForField(Type type, ValidatedFieldReference fieldReference)
        {
            if (fieldReference == null) throw new ArgumentNullException("fieldReference");

            if (fieldReference.Validators.Count == 0)
                return null;

            FieldInfo fieldInfo = ValidationReflectionHelper.GetField(type, fieldReference.Name, false);
            if (fieldInfo == null)
                return null;

            ConfigurationValidatedElement validatedElement = new ConfigurationValidatedElement(fieldReference, fieldInfo);

            return CreateValidatorForValidatedElement(validatedElement, this.GetCompositeValidatorBuilderForField);
        }