protected void Page_Load(object sender, EventArgs e) { GeoLocalizacion geo = ObtenerGeoLocalizacionPorIP(ObtenerIpExterna()); var pronosticosemanal = ObtenerPronosticoSemanalPorCoordenadas(geo.latitude, geo.longitude); ConformarTiempoActual(geo, pronosticosemanal.First()); ConformarPronosticoSemanal(geo, pronosticosemanal); }
private void ConformarPronosticoSemanal(GeoLocalizacion geo, List <Tiempo> pronostico_semanal) { InsertarEnLogTransacciones("Conformando pronostico semanal para la GeoLocalización: " + geo.pais + " - " + geo.ciudad + " - " + geo.latitude + " - " + geo.longitude); ConformarPrimerDia(pronostico_semanal.ElementAt(0)); ConformarSegundoDia(pronostico_semanal.ElementAt(1)); ConformarTercerDia(pronostico_semanal.ElementAt(2)); ConformarCuartoDia(pronostico_semanal.ElementAt(3)); ConformarQuintoDia(pronostico_semanal.ElementAt(4)); }
private void ConformarTiempoActual(GeoLocalizacion geo, Tiempo tiempo) { InsertarEnLogTransacciones("Conformando el tiempo actual para la GeoLocalización: " + geo.pais + " - " + geo.ciudad + " - " + geo.latitude + " - " + geo.longitude); PaisReporteDiario.InnerText = geo.pais; CiudadReporteDiario.InnerText = geo.ciudad; DiaReporteDiario.InnerText = ObtenerDiaSemana(); EstadoClimaReporteDiario.InnerText = tiempo.estadotiempo; TemperaturaCelsiusReporteDiario.InnerText = tiempo.temperatura.RecortarAUnDecimal() + " °C"; TemperaturaFarenheitReporteDiario.InnerText = CelsiusAFarenheit(tiempo.temperatura).RecortarAUnDecimal() + " ° F"; HumedadReporteDiario.InnerText = "Humedad: " + tiempo.humedad.ToString() + "%"; VientoReporteDiario.InnerText = "Viento: " + MetrosPorSegundoAKmPorHora(tiempo.velocidadviento).RecortarAUnDecimal() + " km/h "; ProbabilidadPrecipitacionesReporteDiario.InnerText = "Prob. de precipitaciones: " + tiempo.probprecipitaciones.ToString() + "%"; ImagenReporteDiario.Attributes["Class"] = tiempo.iconoestadotiempo; }
private GeoLocalizacion ObtenerGeoLocalizacionPorIP(string IP) { InsertarEnLogTransacciones("Obteniendo geolocalización por IP para la IP: " + IP); string url = "http://api.ipstack.com/" + IP + "?access_key=9e3c520861ef06e9e0e1df3be1645280"; string json = ObtenerHTML(url); var obj = JObject.Parse(json); GeoLocalizacion geo = new GeoLocalizacion(); geo.pais = (string)obj["country_name"]; geo.ciudad = (string)obj["city"]; geo.latitude = (double)obj["latitude"]; geo.longitude = (double)obj["longitude"]; return(geo); }
protected void Button1_Click(object sender, EventArgs e) { string pais = Request.Form["Pais"]; string ciudad = Request.Form["Ciudad"]; InsertarEnLogTransacciones("Obteniendo pronóstico para: " + pais + " - " + ciudad); Coordenadas coord = ObtenerLatitudYLongitud(pais, ciudad); if (coord.longitud != -1 && coord.longitud != -1) { var pronosticosemanal = ObtenerPronosticoSemanalPorCoordenadas(coord.latitud, coord.longitud); GeoLocalizacion geo = new GeoLocalizacion(pais, ciudad, coord.latitud, coord.longitud); ConformarTiempoActual(geo, pronosticosemanal.First()); ConformarPronosticoSemanal(geo, pronosticosemanal); } else { ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('No se encontró El País/Ciudad: " + pais + "-" + ciudad + "')", true); } }