Пример #1
0
        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);
        }
Пример #2
0
 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));
 }
Пример #3
0
 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;
 }
Пример #4
0
        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);
        }
Пример #5
0
        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);
            }
        }