protected ValidationAppResult DomainToApplicationResult(ValidationResult result)
        {
            var validationAppResult = new ValidationAppResult();

            foreach (var validationError in result.Erros)
            {
                validationAppResult.Erros.Add(new ValidationAppError(validationError.Message));
            }
            validationAppResult.IsValid = result.IsValid;

            return validationAppResult;
        }
        public ValidationAppResult CadastrarNovoCurso(NovoCursoViewModel novoCursoViewModel)
        {
            var resultadoValidacao = new ValidationAppResult();
            BeginTransaction();

            var novoCurso = new Curso(novoCursoViewModel.Nome, novoCursoViewModel.Ativo, _tipoCursoService.ObterPorId(novoCursoViewModel.TipoCursoId));

            resultadoValidacao = DomainToApplicationResult(_cursoService.AdicionarNovoCurso(novoCurso));

            if (resultadoValidacao.IsValid)
                Commit();

            return resultadoValidacao;
        }