public RespuestaMetodoTop10Gifs SelectTop10GifsDB() { Log objLog = new Log(); string Codigo = "000"; string Mensaje = "OK"; List <GifImage> Imagenes = new List <GifImage>(); MySQLData oDataBase = new MySQLData(); try { oDataBase.Open(); DataSet dsDatos = Data.SelectTop10Gifs(ref oDataBase); if (dsDatos.Tables.Count > 0) { DataTable tbl = dsDatos.Tables[0]; foreach (DataRow Registro in tbl.Rows) { int Id = int.Parse(Registro["Id"].ToString()); int num_accesos = int.Parse(Registro["num_accesos"].ToString()); string nombrearchivo = Registro["nombrearchivo"].ToString(); byte[] archivo = (byte[])Registro["archivo"]; GifImage Imagen = new GifImage(); Imagen.Id = Id; Imagen.NumAccesos = num_accesos; Imagen.Nombre = nombrearchivo; Imagen.Imagen = archivo; Imagenes.Add(Imagen); } } } catch (Exception exc) { Codigo = "999"; Mensaje = String.Format("Error. Detalles: {0}", exc.Message); } oDataBase.Close(); RespuestaMetodoTop10Gifs Respuesta = new RespuestaMetodoTop10Gifs(); Respuesta.CodigoRetorno = Codigo; Respuesta.MensajeRetorno = Mensaje; Respuesta.Imagenes = Imagenes; LogSelectTop10Gifs(objLog, Respuesta); return(Respuesta); }
private void LogSelectTop10GifsId(Log objLog, RespuestaMetodoTop10Gifs Respuesta) { string Metodo = "SelectTop10GifsId"; string Titulo = String.Format("Método {0} - Respuesta del Método", Metodo); objLog.WriteTitulo(Titulo); objLog.WriteLogLine(String.Format("Codigo : {0}", Respuesta.CodigoRetorno)); objLog.WriteLogLine(String.Format("Mensaje : {0}", Respuesta.MensajeRetorno)); int i = 0; foreach (GifImage imgn in Respuesta.Imagenes) { i++; objLog.WriteLogLine(String.Format("{0:00}.- Archivo GIF Id {1:0000} : {2:0000} acceso(s).", i, imgn.Id, imgn.NumAccesos)); } }
// Base de Datos -> Carpeta public string[] ImportGifs() { string Codigo = "000"; string Mensaje = "OK"; int n = 0; int IndiceRead = 0; try { RespuestaMetodoTop10Gifs RespuestaSelect = SelectTop10GifsDB(); if (RespuestaSelect.CodigoRetorno == "000") { n = RespuestaSelect.Imagenes.Count; int i = 0; foreach (GifImage imgn in RespuestaSelect.Imagenes) { object img = imgn.Imagen; string nombrearchivo = imgn.Nombre; Image imagen = StreamToImage(img, nombrearchivo); if (imagen != null) { IndiceRead++; } i++; } } else { Codigo = RespuestaSelect.CodigoRetorno; Mensaje = RespuestaSelect.MensajeRetorno; } } catch (Exception exc) { Codigo = "999"; Mensaje = String.Format("Error. Detalles: {0}", exc.Message); } string[] Respuesta = new string[] { Codigo, Mensaje, n.ToString(), IndiceRead.ToString() }; return(Respuesta); }
public RespuestaMetodoTop10Gifs SelectTop10GifsCache() { Log objLog = new Log(); string Codigo = "000"; string Mensaje = "OK"; List <GifImage> Imagenes = new List <GifImage>(); String fqdnSILO1 = ConfigurationManager.AppSettings["fqdnSILO"]; int tcpSILO1 = int.Parse(ConfigurationManager.AppSettings["tcpSILO"]); DataSet oDS = new DataSet(); try { //Se define la configuración y se instancia el FrontEnd (Cliente del SILO) ClientConfiguration clientConfig = new ClientConfiguration { GatewayProvider = ClientConfiguration.GatewayProviderType.Config }; //Para ello usaremos la dirección IPv4 que nos resuelva el DNS IPHostEntry ipHostInfo = Dns.GetHostEntry(fqdnSILO1); IPAddress ipSILO1 = ipHostInfo.AddressList.FirstOrDefault(a => a.AddressFamily == AddressFamily.InterNetwork); clientConfig.Gateways.Add(new IPEndPoint(ipSILO1, tcpSILO1)); IClusterClient client = new ClientBuilder().UseConfiguration(clientConfig).Build(); //Se realiza la conexión al SILO client.Connect().Wait(); //Se define el objeto objRemoto para referenciar el grain de la interfaz IGIFSGrain del SILO IGIFSGrain objRemoto = client.GetGrain <IGIFSGrain>(0); //Definimos el DataSet oDS y registramos en el mismo, el DataSet de noticias de la cache, que se //obtiene del método "LeerNoticias", declarado en el SILO objRemoto.CargarGIFSALaCache().Wait(); oDS = objRemoto.LeerGIFSDesdeLaCache().Result; //Se cierra la conexión con el SILO client.Close(); if (oDS.Tables.Count > 0) { DataTable tbl = oDS.Tables[0]; foreach (DataRow Registro in tbl.Rows) { int Id = int.Parse(Registro["Id"].ToString()); int num_accesos = int.Parse(Registro["num_accesos"].ToString()); string nombrearchivo = Registro["nombrearchivo"].ToString(); byte[] archivo = (byte[])Registro["archivo"]; GifImage Imagen = new GifImage(); Imagen.Id = Id; Imagen.NumAccesos = num_accesos; Imagen.Nombre = nombrearchivo; Imagen.Imagen = archivo; Imagenes.Add(Imagen); } } } catch (Exception exc) { Codigo = "999"; Mensaje = String.Format("Error. Detalles: {0}", exc.Message); } RespuestaMetodoTop10Gifs Respuesta = new RespuestaMetodoTop10Gifs(); Respuesta.CodigoRetorno = Codigo; Respuesta.MensajeRetorno = Mensaje; Respuesta.Imagenes = Imagenes; LogSelectTop10Gifs(objLog, Respuesta); return(Respuesta); }