Exemplo n.º 1
0
        public CurrentConditions GetCurrentConditionFromXDoc(XDocument doc)
        {
            var returnCondition = new CurrentConditions();

            //populate feedItem
            foreach (var currentObs in doc.Descendants("current_observation"))
            {
                if (currentObs == null)
                {
                    continue;
                }
                returnCondition.SugPickup       = RssHelper.GetStringFromValue(currentObs.Element("suggested_pickup"));
                returnCondition.SugPickupPeriod = RssHelper.GetStringFromValue(currentObs.Element("suggested_pickup_period"));
                returnCondition.StationID       = RssHelper.GetStringFromValue(currentObs.Element("station_id"));
                returnCondition.Latitude        = RssHelper.GetDecimalFromValue(currentObs.Element("latitude"));
                returnCondition.Longitude       = RssHelper.GetDecimalFromValue(currentObs.Element("longitude"));
                returnCondition.ObsTime         = RssHelper.GetDateTimeFromValue(currentObs.Element("observation_time_rfc822"));
                returnCondition.Weather         = RssHelper.GetStringFromValue(currentObs.Element("weather"));
                returnCondition.TempF           = RssHelper.GetDecimalFromValue(currentObs.Element("temp_f"));
                returnCondition.RelHumidity     = RssHelper.GetDecimalFromValue(currentObs.Element("relative_humidity"));
                returnCondition.WindDir         = RssHelper.GetStringFromValue(currentObs.Element("wind_dir"));
                returnCondition.WindDegrees     = RssHelper.GetIntFromValue(currentObs.Element("wind_degrees"));
                returnCondition.WindMPH         = RssHelper.GetDecimalFromValue(currentObs.Element("wind_mph"));
                returnCondition.PressureIn      = RssHelper.GetDecimalFromValue(currentObs.Element("pressure_in"));
                returnCondition.DewPointF       = RssHelper.GetDecimalFromValue(currentObs.Element("dewpoint_f"));
                returnCondition.VisibilityMiles = RssHelper.GetDecimalFromValue(currentObs.Element("visibility_mi"));
                break;
            }

            return(returnCondition);
        }