示例#1
0
        private static bool ValidatePassport2(string arg)
        {
            // split into fields and validate
            var fields = arg.Split(new[] { " ", Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries)
                         .Select(x => x.Split(":", StringSplitOptions.RemoveEmptyEntries));

            return(fields.All(field => FieldValidators[field[0]](field[1])));
        }
示例#2
0
        public FieldValidationMetadata GetValidationMetadataForField(
            string fieldName,
            bool createIfNotFound
            )
        {
            if (String.IsNullOrEmpty(fieldName))
            {
                throw Error.ParameterCannotBeNullOrEmpty("fieldName");
            }

            FieldValidationMetadata metadata;

            if (!FieldValidators.TryGetValue(fieldName, out metadata))
            {
                if (createIfNotFound)
                {
                    metadata = new FieldValidationMetadata()
                    {
                        FieldName = fieldName
                    };
                    FieldValidators[fieldName] = metadata;
                }
            }
            return(metadata);
        }
示例#3
0
        private IList <IFieldValidator> GetFieldValidators(IEnumerable <ProviderSummary> providerSummaries)
        {
            if (FieldValidators.IsNullOrEmpty())
            {
                IFieldValidator requiredValidator              = new RequiredValidator();
                IFieldValidator providerBlankValidator         = new ProviderIdentifierBlankValidator();
                IFieldValidator dataTypeMismatchFieldValidator = new DatatypeMismatchFieldValidator();
                IFieldValidator providerExistsValidator        = new ProviderExistsValidator(providerSummaries.ToList());
                IFieldValidator maxAndMinFieldValidator        = new MaxAndMinFieldValidator();

                return(new List <IFieldValidator>
                {
                    providerBlankValidator,
                    requiredValidator,
                    dataTypeMismatchFieldValidator,
                    providerExistsValidator,
                    maxAndMinFieldValidator,
                    providerExistsValidator
                });
            }

            return(FieldValidators);
        }