public static List <string> GetDirectoriesFTP() { FtpWebRequest ftpRequest = UtilFTP.FtpRequest("/datos"); ftpRequest.Method = WebRequestMethods.Ftp.ListDirectory; FtpWebResponse response = (FtpWebResponse)ftpRequest.GetResponse(); StreamReader streamReader = new StreamReader(response.GetResponseStream()); List <string> directories = new List <string>(); string line = streamReader.ReadLine(); while (!string.IsNullOrEmpty(line)) { directories.Add(line); line = streamReader.ReadLine(); } streamReader.Close(); return(directories); }
// IMPORTAR MOVIMIENTOS POS public static void GetDataPOS(bool diarios) { List <string> directories = GetDirectoriesFTP(); if (directories.Count() > 0) { DataTable tbl = BL.GetDataBLL.RazonSocial(); string idRazonSocial = tbl.Rows[0][0].ToString() + "_"; DescargarArchivos(directories, idRazonSocial, diarios); string[] archivos = Directory.GetFiles(@"c:\windows\temp\data_import", idRazonSocial + "*"); FtpWebRequest ftpRequest; foreach (string archivo in archivos) { if (RestaurarDatos(archivo)) { DAL.DatosDAL.InsertarMovimientos(); Char delimitador = '\\'; String[] cadena = archivo.Split(delimitador); string borrar = cadena[4]; ftpRequest = UtilFTP.FtpRequest(@"/datos/" + borrar); ftpRequest.Method = WebRequestMethods.Ftp.DeleteFile; FtpWebResponse respuesta = (FtpWebResponse)ftpRequest.GetResponse(); } else { if (intentosGetPOS < 10) { intentosGetPOS++; GetDataPOS(diarios); } } } } if (Directory.Exists(@"c:\windows\temp\data_import")) { Directory.Delete(@"c:\windows\temp\data_import", true); } }