public FornecedorValidation() { RuleFor(f => f.Nome) .NotEmpty().WithMessage("O campo {PropertyName} precisa ser fornecido") .Length(2, 100) .WithMessage("O campo {PropertyName} precisa ser entre {MinLength} e {MaxLength} caracteres"); When(f => f.TipoFornecedor == TipoFornecedor.PessoaFisica, () => { RuleFor(f => f.Documento.Length) .Equal(CpfValidacao.TamanhoCpf) .WithMessage("O campo documento precisa ter {ComparisonValue} carcteres e foi fornecido {PropertyValue}."); RuleFor(f => CpfValidacao.IsCpf(f.Documento)).Equal(true) .WithMessage("O documento fornecedor é inválido"); }); When(f => f.TipoFornecedor == TipoFornecedor.PessoaJuridica, () => { RuleFor(f => f.Documento.Length) .Equal(CnpjValidacao.TamanhoCnpj) .WithMessage("O campo documento precisa ter {ComparisonValue} carcteres e foi fornecido {PropertyValue}."); RuleFor(f => CnpjValidacao.IsCnpj(f.Documento)).Equal(true) .WithMessage("O documento fornecedor é inválido"); }); }
public override void Validate() { LimparMensagemValidacao(); if (string.IsNullOrWhiteSpace(Email)) { AdicionarMensagem("Email é de preenchimento obrigatório"); } if (string.IsNullOrWhiteSpace(Senha)) { AdicionarMensagem("Senha é de preenchimento obrigatório"); } if ((int)TipoPessoa <= 0) { AdicionarMensagem("Informe o tipo de pessoa"); } if (string.IsNullOrWhiteSpace(Documento)) { AdicionarMensagem("Documento é de preenchimento obrigatório"); } if (!string.IsNullOrWhiteSpace(Documento)) { if (TipoPessoa == TipoDocumentoEnum.PessoaFisica && !CpfValidacao.IsCpf(Documento)) { AdicionarMensagem("Cpf Inválido"); } if (TipoPessoa == TipoDocumentoEnum.PessoaJuridica && !CnpjValidacao.IsCnpj(Documento)) { AdicionarMensagem("Cnpj Inválido"); } } }