Exemple #1
0
        protected override ValidationResult IsValid(object value, ValidationContext validationContext)
        {
            string email = (value as string).Trim();

            ICollaboratorRepository _collaboratorRepository = (ICollaboratorRepository)validationContext.GetService(typeof(ICollaboratorRepository));
            List <Collaborator>     collaborators           = _collaboratorRepository.GetCollaboratorPerEmail(email);

            Collaborator objCollaborator = (Collaborator)validationContext.ObjectInstance;

            if (collaborators.Count > 1)
            {
                return(new ValidationResult("Este email já foi cadastrado por outro usuário"));
            }
            if (collaborators.Count == 1 && objCollaborator.Id != collaborators[0].Id)
            {
                return(new ValidationResult("Este email já foi cadastrado por outro usuário"));
            }

            return(ValidationResult.Success);
        }