public static RespuestaPeticionModel CallApi(string url, out string mensaje) { mensaje = ""; HttpWebResponse res = null; RespuestaPeticionModel m; try { HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); res = (HttpWebResponse)req.GetResponse(); using (StreamReader reader = new StreamReader(res.GetResponseStream(), Encoding.UTF8)) { m = JsonConvert.DeserializeObject <RespuestaPeticionModel>(reader.ReadToEnd()); } } catch (WebException ex) { mensaje = string.Format("La ruta {0} no existe: {1}. {2}", url, ex.Message, ex.InnerException); m = new RespuestaPeticionModel(); } finally { if (res != null) { res.Close(); } } return(m); }
private static Conector MapearLlamada(RespuestaPeticionModel peticionModel, Configuracion config) { return(new Conector() { ConectorDetalleDescripcion = peticionModel.Descripcion, ConectorConfiguracionId = config.ConfiguracionId, EjecucionSatisfactoria = (peticionModel.Clave == 1 || peticionModel.Clave == 2), ConectorDetalleRespuestaId = peticionModel.Clave, UsuarioCreacionId = 1 }); }
public void Start_Visitas() { LogExcepcion logEx; string ErrorResult = ""; RespuestaModel res; _eventLog.CrearLog("Inicio del servicio de Conectores"); try { Dictionary <string, dynamic> P = new Dictionary <string, dynamic> { { "Opcion", 5 } }; IEnumerable <Configuracion> configActivos = _dao.Consultar <Configuracion>(P); if (configActivos.Any()) { foreach (Configuracion item in configActivos) { RespuestaPeticionModel peticionModel = LlamarAPI(item.RutaLog); res = RegistrarConector(peticionModel, item); if (res.Satisfactorio) { ActualizarVisitaConfiguracion(4, item.ConfiguracionId, 1, false, out m); } } } } catch (Exception ex) { string InnerExcepcionResult = (ex.InnerException != null ? ex.InnerException?.ToString() : "").Trim(); ErrorResult = ("Error en el proceso: " + ex.Message + ". " + InnerExcepcionResult).Trim(); logEx = GenerarLogExcepcion("Proceso de Conectores", ErrorResult, ErrorResult, "850", InnerExcepcionResult, "Proceso de Conectores"); m = RegistrarExcepcion(logEx, null); _eventLog.CrearLog("Error interno del servicio de conectores. " + ex.Message + ". " + ex.InnerException?.ToString(), System.Diagnostics.EventLogEntryType.Error); } }
private RespuestaModel RegistrarConector(RespuestaPeticionModel peticionModel, Configuracion config) { Conector conector = MapearLlamada(peticionModel, config); try { Dictionary <string, dynamic> P = conector.AsDictionary(); m = _dao.Insertar <RespuestaModel>(P); } catch (Exception ex) { string InnerExcepcionResult = (ex.InnerException != null ? ex.InnerException?.ToString() : "").Trim(); string ErrorResult = ("Error en el proceso: " + ex.Message + ". " + InnerExcepcionResult).Trim(); LogExcepcion logEx = GenerarLogExcepcion("Proceso de Conectores", ErrorResult, ErrorResult, "850", InnerExcepcionResult, "Proceso de Conectores"); m = RegistrarExcepcion(logEx, null); m.Id = 0; m.ErrorId = -2; m.Satisfactorio = false; m.Datos = null; m.Mensaje = ex.Message + ". " + ex.InnerException; } return(m); }
private RespuestaPeticionModel LlamarAPI(string RutaLog) { string mensaje = ""; RespuestaPeticionModel res; _eventLog.CrearLog("Llamando a la ruta: " + RutaLog); try { res = RequestApiExtension.CallApi(RutaLog, out mensaje); } catch (Exception ex) { string InnerExcepcionResult = (ex.InnerException != null ? ex.InnerException?.ToString() : "").Trim(); string ErrorResult = ("Error en el proceso: " + ex.Message + ". " + InnerExcepcionResult).Trim(); LogExcepcion logEx = GenerarLogExcepcion("Proceso de Conectores", ErrorResult, ErrorResult, "850", InnerExcepcionResult, "Proceso de Conectores"); m = RegistrarExcepcion(logEx, null); string error = string.Format("Hubo un problema con el proceso. {0}. {1}.", ex.Message, ex.InnerException?.ToString()); _eventLog.CrearLog(error); res = new RespuestaPeticionModel(); } return(res); }