Пример #1
0
        public static HeWeatherModel Generate(string resstr, DataSource dataSource)
        {
            switch (dataSource)
            {
            case DataSource.HeWeather:
                var he = HeWeatherContract.Generate(resstr);
                try
                {
                    return(new HeWeatherModel(he));
                }
                catch (Exception)
                {
                    return(null);
                }

            case DataSource.Caiyun:
                var cai = CaiyunContract.Generate(resstr);
                return(new HeWeatherModel(cai.now, cai.forecast));

            case DataSource.Wunderground:
                var wun = WunderGroundContract.Generate(resstr);
                return(new HeWeatherModel(wun));

            default:
                return(null);
            }
        }
Пример #2
0
 public HeWeatherModel(HeWeatherContract heweathercontract)
 {
     if (heweathercontract == null)
     {
         throw new ArgumentException("Value can't be null.");
     }
     Status            = ParseStatus(heweathercontract.status);
     Aqi               = new AQI(heweathercontract.aqi);
     DailyForecast     = GenerateDailyForecast(heweathercontract.daily_forecast);
     HourlyForecast    = GenerateHourlyForecast(heweathercontract.hourly_forecast);
     Alarms            = GenerateWeatherAlarms(heweathercontract.alarms);
     Location          = new Location(heweathercontract.basic);
     NowWeather        = new NowWeather(heweathercontract.now);
     WeatherSuggestion = new WeatherSuggestion(heweathercontract.suggestion);
 }