private String SubeArchivo(int indice) { if (Request.Files.Count > 0) { var archivo = Request.Files[indice]; if (archivo.ContentLength > 0) { var operacionesStreams = new OperacionesStreams(); var nombreArchivo = Path.GetFileName(archivo.FileName); var pathDestino = Path.Combine(Server.MapPath("~/Archivos/CargasMasivas/"), archivo.FileName); Stream fileStream = archivo.InputStream; var mStreamer = new MemoryStream(); mStreamer.SetLength(fileStream.Length); fileStream.Read(mStreamer.GetBuffer(), 0, (int)fileStream.Length); mStreamer.Seek(0, SeekOrigin.Begin); operacionesStreams.StreamArchivo(mStreamer, pathDestino); return(pathDestino); } } throw new Exception("Favor de cargar por lo menos un archivo"); }
public void ProcesarArchivoExterno() { //Console.WriteLine("***************Inicio Cola***************"); LogicaFacadeFacturas _logicaFacade; AplicacionContext _db = new AplicacionContext(); ManejoArchivos _manejoArchivos = new ManejoArchivos(); OperacionesStreams _operacionesStreams = new OperacionesStreams(); SolicitudArchivosXsa _solicitudArchivosXsa = new SolicitudArchivosXsa(); ObtenerConfiguraciones _obtenerConfiguraciones = new ObtenerConfiguraciones(); //var pathArchivosSftp = Properties.Settings.Default.PathSftp; var pathArchivosExternos = Properties.Settings.Default.PathArchivos; var archivos = new List <String>(); var obtenerArchivos = new ObtenerArchivosLocales(pathArchivosExternos); archivos = obtenerArchivos.ObtenerArchivos(); foreach (var archivo in archivos.Where(a => a.Contains(".xml") || a.Contains(".XML"))) { Console.WriteLine("**************Procesando archivos**************"); Console.WriteLine("{0}", archivo); try { _logicaFacade = new LogicaFacadeFacturas(); Console.WriteLine("Inicio: {0}", DateTime.Now); _logicaFacade.Decodificar(archivo); Console.WriteLine("Fin: {0}", DateTime.Now); } catch (Exception ex) { Console.WriteLine("Error: {0}", ex.Message); _manejoArchivos.MoverErroneo(archivo); } Console.WriteLine("**************Finalizando Proceso de Archivos**************"); Console.WriteLine(""); } }
private void PopularArchivos(ref FacturaRecibida facturaRecibida) { if (Request.Files.Count > 0) { for (int i = 0; i < Request.Files.Count; i++) { if (Request.Files[i].ContentLength > 0) { var operacionesStreams = new OperacionesStreams(); var nombreArchivo = Path.GetFileName(Request.Files[i].FileName); var pathDestino = Path.Combine(Server.MapPath("~/Archivos/Validaciones/"), Request.Files[i].FileName); Stream fileStream = Request.Files[i].InputStream; var mStreamer = new MemoryStream(); mStreamer.SetLength(fileStream.Length); fileStream.Read(mStreamer.GetBuffer(), 0, (int)fileStream.Length); mStreamer.Seek(0, SeekOrigin.Begin); var arreglo = operacionesStreams.StreamByteArray(mStreamer); operacionesStreams.StreamArchivo(mStreamer, pathDestino); switch (Path.GetExtension(Request.Files[i].FileName).ToLower()) { case ".xml": facturaRecibida.NombreArchivoXml = Request.Files[i].FileName; facturaRecibida.ArchivoFisicoXml = arreglo; break; default: throw new Exception("Tipo de archivo Inválido"); } mStreamer.Close(); } } } }