Esempio n. 1
0
        public static void AnalisarGravarUsuario(int qtdRepeticoes)
        {
            Usuario usuarioComErrosDeCadastro = new Usuario()
            {
                Nome = null,
                Idade = 21
            };

            bool utilizarTryCatchNaValidacao = true;
            stopwatch.Reset();
            stopwatch.Start();
            for (int i = 0; i < qtdRepeticoes; i++)
            {
                usuarioComErrosDeCadastro.Gravar(utilizarTryCatchNaValidacao);
            }
            stopwatch.Start();
            TimeSpan tempoValidacaoComTryCatch = stopwatch.Elapsed;

            stopwatch.Reset();
            utilizarTryCatchNaValidacao = false;
            stopwatch.Start();
            for (int i = 0; i < qtdRepeticoes; i++)
            {
                usuarioComErrosDeCadastro.Gravar(utilizarTryCatchNaValidacao);
            }
            stopwatch.Stop();
            TimeSpan tempoValidacaoSemTryCatch = stopwatch.Elapsed;

            Console.WriteLine(String.Format("Tempo de validação UTILIZANDO o try catch, repetindo o processo {0} vezes: {1}",
                qtdRepeticoes, tempoValidacaoComTryCatch));
            Console.WriteLine(String.Format("Tempo de validação NÃO UTILIZANDO o try catch, repetindo o processo {0} vezes: {1}",
                qtdRepeticoes, tempoValidacaoSemTryCatch));
            Console.WriteLine(String.Format("Utilizando o try catch, a validação se tornou {0} vezes mais lenta em {1} repetições.",
                tempoValidacaoComTryCatch.Ticks / tempoValidacaoSemTryCatch.Ticks, qtdRepeticoes));
        }
Esempio n. 2
0
        private static List<string> ValidarNaoUtilizandoTryCatch(Usuario usuario)
        {
            List<string> erros = new List<string>();

            if (usuario.Nome == null)
            {
                erros.Add("O nome do usuário deve ser informado.");
            }
            else if (usuario.Nome.Length > 100)
            {
                erros.Add("O nome do usuário tem mais de 100 caracteres, informe um nome válido.");
            }

            return erros;
        }
Esempio n. 3
0
        private static List<string> ValidarUtilizandoTryCatch(Usuario usuario)
        {
            List<string> erros = new List<string>();

            try
            {
                if (usuario.Nome.Length > 100)
                {
                    throw new Exception("");
                }
            }
            catch
            {
                erros.Add("O nome do usuário é nulo ou tem mais de 100 caracteres, informe um nome válido.");
            }

            return erros;
        }