/// <summary> /// Realiza a validação do objeto. /// </summary> /// <param name="currentTarget">Objeto Alvo da validação.</param> /// <param name="propertyName">Nome da propriedade que está sendo validada.</param> /// <param name="propertyLabel">Label da propriedade que está sendo validada.</param> /// <param name="objectToValidate">Valor a ser validado.</param> /// <param name="validationResults">Objeto com os resultados das validações.</param> /// <param name="messageProvider">Fluxo para a obtenção de mensagem de erro.</param> public void DoValidate(object currentTarget, string propertyName, Colosoft.Validation.IPropertyLabel propertyLabel, object objectToValidate, Colosoft.Validation.ValidationResult validationResults, Colosoft.Validation.IValidationMessageProvider messageProvider) { var input = (_test != null) ? objectToValidate as string : null; if ((input != null) && input.ValidateAlg(_test.Digits, _test.Start, _test.Limit, _test.Base)) { validationResults.Invalid(Colosoft.Validation.ValidationResultType.Error, ResourceMessageFormatter.Create(() => Properties.Resources.Validators_CheckDigitsValidator_MessageTemplate, ((propertyLabel != null) && (propertyLabel.Title != null) && (!String.IsNullOrWhiteSpace(propertyLabel.Title.Format()))) ? propertyLabel.Title : propertyName.GetFormatter(), ValidatorsHelper.GetCurrentTargetName(currentTarget))); } }
/// <summary> /// Realiza a validação do objeto. /// </summary> /// <param name="currentTarget">Objeto Alvo da validação.</param> /// <param name="propertyName">Nome da propriedade que está sendo validada.</param> /// <param name="propertyLabel">Label da propriedade que está sendo validada.</param> /// <param name="objectToValidate">Valor a ser validado.</param> /// <param name="validationResults">Objeto com os resultados das validações.</param> /// <param name="messageProvider">Fluxo para a obtenção de mensagem de erro.</param> public void DoValidate(object currentTarget, string propertyName, Colosoft.Validation.IPropertyLabel propertyLabel, object objectToValidate, Colosoft.Validation.ValidationResult validationResults, Colosoft.Validation.IValidationMessageProvider messageProvider) { if (_test != null) { var input = objectToValidate as String; var size = String.IsNullOrEmpty(input) ? 0 : input.Length; if ((size > 0) && ((_test.MinValue > size) || (_test.MaxValue < size))) { validationResults.Invalid(Colosoft.Validation.ValidationResultType.Error, ResourceMessageFormatter.Create(() => Properties.Resources.Validators_LengthValidator_MessageTemplate, ((propertyLabel != null) && (propertyLabel.Title != null) && (!String.IsNullOrWhiteSpace(propertyLabel.Title.Format()))) ? propertyLabel.Title : propertyName.GetFormatter(), ValidatorsHelper.GetCurrentTargetName(currentTarget))); } } }
/// <summary> /// Realiza a validação do objeto. /// </summary> /// <param name="currentTarget">Objeto Alvo da validação.</param> /// <param name="propertyName">Nome da propriedade que está sendo validada.</param> /// <param name="propertyLabel">Label da propriedade que está sendo validada.</param> /// <param name="objectToValidate">Valor a ser validado.</param> /// <param name="validationResults">Objeto com os resultados das validações.</param> /// <param name="messageProvider">Fluxo para a obtenção de mensagem de erro.</param> public void DoValidate(object currentTarget, string propertyName, Colosoft.Validation.IPropertyLabel propertyLabel, object objectToValidate, Colosoft.Validation.ValidationResult validationResults, Colosoft.Validation.IValidationMessageProvider messageProvider) { if (_test != null) { var input = objectToValidate as string; if ((!String.IsNullOrEmpty(_test.FromValue)) && (_test.FromValue.CompareTo(input) > 0)) { validationResults.Invalid(Colosoft.Validation.ValidationResultType.Error, ResourceMessageFormatter.Create(() => Properties.Resources.Validators_RangeValidator_MessageTemplate, ((propertyLabel != null) && (propertyLabel.Title != null) && (!String.IsNullOrWhiteSpace(propertyLabel.Title.Format()))) ? propertyLabel.Title : propertyName.GetFormatter(), ValidatorsHelper.GetCurrentTargetName(currentTarget))); } else if ((!String.IsNullOrEmpty(_test.ToValue)) && (_test.ToValue.CompareTo(input) < 0)) { validationResults.Invalid(Colosoft.Validation.ValidationResultType.Error, ResourceMessageFormatter.Create(() => Properties.Resources.Validators_RangeValidator_MessageTemplate, ((propertyLabel != null) && (propertyLabel.Title != null) && (!String.IsNullOrWhiteSpace(propertyLabel.Title.Format()))) ? propertyLabel.Title : propertyName.GetFormatter(), ValidatorsHelper.GetCurrentTargetName(currentTarget))); } } throw new NotImplementedException(); }
/// <summary> /// Realiza a validação do objeto. /// </summary> /// <param name="currentTarget">Objeto Alvo da validação.</param> /// <param name="propertyName">Nome da propriedade que está sendo validada.</param> /// <param name="propertyLabel">Label da propriedade que está sendo validada.</param> /// <param name="objectToValidate">Valor a ser validado.</param> /// <param name="validationResults">Objeto com os resultados das validações.</param> /// <param name="messageProvider">Fluxo para a obtenção de mensagem de erro.</param> public void DoValidate(object currentTarget, string propertyName, Colosoft.Validation.IPropertyLabel propertyLabel, object objectToValidate, Colosoft.Validation.ValidationResult validationResults, Colosoft.Validation.IValidationMessageProvider messageProvider) { var input = objectToValidate as string; if ((_test != null) && (!String.IsNullOrEmpty(input)) && (!input.All(c => _test.ValidChars.Contains(c)))) { validationResults.Invalid(Colosoft.Validation.ValidationResultType.Error, ResourceMessageFormatter.Create(() => Properties.Resources.Validators_ValidCharsValidator_MessageTemplate, ((propertyLabel != null) && (propertyLabel.Title != null) && (!String.IsNullOrWhiteSpace(propertyLabel.Title.Format()))) ? propertyLabel.Title : propertyName.GetFormatter(), ValidatorsHelper.GetCurrentTargetName(currentTarget))); } }
/// <summary> /// Realiza a validação do objeto. /// </summary> /// <param name="currentTarget">Objeto Alvo da validação.</param> /// <param name="propertyName">Nome da propriedade que está sendo validada.</param> /// <param name="propertyLabel">Label da propriedade que está sendo validada.</param> /// <param name="objectToValidate">Valor a ser validado.</param> /// <param name="validationResults">Objeto com os resultados das validações.</param> /// <param name="messageProvider">Fluxo para a obtenção de mensagem de erro.</param> public void DoValidate(object currentTarget, string propertyName, Colosoft.Validation.IPropertyLabel propertyLabel, object objectToValidate, Colosoft.Validation.ValidationResult validationResults, Colosoft.Validation.IValidationMessageProvider messageProvider) { if ((_test != null) && (_test.CheckMethod != null)) { var value = objectToValidate as string; if (!string.IsNullOrEmpty(value)) { var result = _test.CheckMethod.Check(value); if (!result.Success) { validationResults.Invalid(Colosoft.Validation.ValidationResultType.Error, result.Message.GetFormatter(propertyName)); } } } }