示例#1
0
        static void Main(string[] args)
        {
            IRepository repository = new WebApiRepository();

            Console.ReadLine();
            List <Usuario> usuarios             = repository.LeerUsuarios();
            ILog           LogCorrectas         = new LogFichero();
            List <String>  compañiasDeCorrectas = null;
            List <Usuario> usuariosCorrectos    = null;
            Stream         ficheroCorrectos     = File.Create(@".\Correct.txt");

            foreach (var u in usuarios)
            {
                LogCorrectas.EscribeLog(u.Name, ficheroEscritura: ficheroCorrectos);
                usuariosCorrectos.Add(u);
            }
            LogCorrectas.EscribeLog("Compañias: ", ficheroEscritura: ficheroCorrectos);
            foreach (var item in usuariosCorrectos)
            {
                if (!compañiasDeCorrectas.Contains(item.Company.Name))
                {
                    compañiasDeCorrectas.Add(item.Company.Name);
                    LogCorrectas.EscribeLog(item.Company.Name, ficheroEscritura: ficheroCorrectos);
                }
            }
        }
示例#2
0
        public static Usuario CrearUsuario(int id, String name, String email, Company company)
        {
            ILog           FailLog = new LogFichero();
            ISpecification s       = new SpecificationEmail();
            ISpecification p       = new SpecificationNombreUsuario();

            if (s.IsSatisfiedBy(email))
            {
                if (p.IsSatisfiedBy(name))
                {
                    return(new Usuario(id, name, null, email, null, null, null,
                                       company));
                }
                else
                {
                    FailLog.EscribeLog("El usuario {id} tiene un nombre demasiado largo", ficheroEscritura: File.Create(@".\Fail.txt"));
                    return(null);
                }
            }
            else
            {
                FailLog.EscribeLog("El usuario {id} tiene un email no válido", ficheroEscritura: File.Create(@".\Fail.txt"));
                return(null);
            }
        }
        protected override void OnException(ExceptionContext filterContext)
        {
            ILog log = new LogFichero();

            if (filterContext.ExceptionHandled)
            {
                return;
            }

            log.EscribirEntrada(filterContext.Exception.Message);

            filterContext.Result = new ViewResult
            {
                ViewName = "~/Views/Shared/Error.cshtml"
            };
            filterContext.ExceptionHandled = true;
        }
示例#4
0
        public static Usuario CrearUsuario(Usuario u)
        {
            ILog           FailLog = new LogFichero();
            ISpecification s       = new SpecificationEmail();
            ISpecification p       = new SpecificationNombreUsuario();

            if (s.IsSatisfiedBy(u.Email))
            {
                if (p.IsSatisfiedBy(u.Name))
                {
                    return(u);
                }
                else
                {
                    FailLog.EscribeLog("El usuario {id} tiene un nombre demasiado largo", ficheroEscritura: File.Create(@".\Fail.txt"));
                    return(null);
                }
            }
            else
            {
                FailLog.EscribeLog("El usuario {username} tiene un email no válido", ficheroEscritura: File.Create(@".\Fail.txt"));
                return(null);
            }
        }