Beispiel #1
0
        private ResultadoValidacion CrearArchivoRoe(Dictionary<string, int> errores, string archivoEntrada, ValidadorInput input, string extraInfo = "")
        {
            var resultado = new List<Validacion>();
            var errorOutput = new StringBuilder();

            errorOutput.AppendLine("Archivo Invalido");
            errorOutput.AppendLine("Path: " + archivoEntrada);
            foreach (KeyValuePair<string, int> error in errores)
            {
                resultado.Add(new Validacion
                                  {
                                      Descripcion = error.Key,
                                      Valido = (error.Value == 0),
                                      Error = (error.Value == 0 ? "OK" : _erroresValidacion[error.Value])
                                  });
            }
            bool valido = errores.All(p => p.Value == 0);
            ValidadorContract c = new ValidadorContract();
            foreach (PropertyInfo propertyInfo in input.GetType().GetProperties())
            {
                var property = c.GetType().GetProperties().Where(p => p.Name == propertyInfo.Name).FirstOrDefault();
                if (property != null)
                {
                    property.SetValue(c,propertyInfo.GetValue(input, new object[0]),new object[0]);
                }
            }
            return new ResultadoValidacion() {Valido = valido, Detalles = resultado, Entrada = c};
        }