public bool ProcesarDependenciasWS(ProcesoDto ProcDto, string Ruta) { bool respuesta = false; ParseadorWS PWS = new ParseadorWS(); ProcesoAvanceDto pdtoA = new ProcesoAvanceDto(); Proceso proc = new Proceso(); try { if (validadatos(ProcDto.UsuarioID, ProcDto.ProcesoID, Ruta)) { DataTable LenguajeApp = proc.ConsultaLenguaje(Convert.ToString(ProcDto.AplicacionID)); if (LenguajeApp == null || LenguajeApp.Rows.Count < 1) { ErrLog.EscribeLogWS("No se encontraron los datos de lenguaje de la Aplicación"); LenguajeApp = null; } else { DataRow Lenguaje = LenguajeApp.Rows[0]; string Tipo = Lenguaje["Extension"].ToString(); if (Tipo == "cs") { Tipo = "*.config"; } else if (Tipo == "java") { Tipo = "*.wsdl"; } else if (Tipo == "asp") { Tipo = "*.asp"; } string[] Archivos = Directory.GetFiles(Ruta, Tipo, SearchOption.AllDirectories); HashSet <string> InventarioWS = new HashSet <string>(); proc.SeteaAvance("En Proceso", "OK", "OK", "40", "40", "", "Iniciando Parseo WS", pdtoA, ProcDto); proc.ActualizaProcesoAvance(pdtoA, ProcDto); for (int i = 0; i <= Archivos.Count() - 1; i++) { InventarioWS = PWS.GenerarInventarioWS(Archivos[i], ProcDto, Tipo); } proc.SeteaAvance("En Proceso", "OK", "OK", "42", "40", "", "Inventario de WS Generado", pdtoA, ProcDto); proc.ActualizaProcesoAvance(pdtoA, ProcDto); Tipo = "*." + Lenguaje["Extension"].ToString(); Archivos = Directory.GetFiles(Ruta, Tipo, SearchOption.AllDirectories); PWS.GenerarSalidaWS(InventarioWS, Archivos, ProcDto.AplicacionID.ToString(), ProcDto); proc.SeteaAvance("En Proceso", "OK", "OK", "70", "70", "", "Parseo WS Terminado", pdtoA, ProcDto); proc.ActualizaProcesoAvance(pdtoA, ProcDto); respuesta = true; } } } catch (Exception Err) { ErrLog.EscribeLogWS("WSInterfacesWebService.ProcesaDependenciasWS " + Err.Message.ToString()); } return(respuesta); }