private void dataService_GetWebPredictCompleted(object sender, GetWebPredictCompletedEventArgs e) { if (((e.Error == null) && (e.Result != null)) && (e.Result != "{\"Table\":]}")) { JsonValue value3 = JsonValue.Parse(e.Result)["Table"]; foreach (object obj2 in (IEnumerable) value3) { using (MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(obj2.ToString()))) { DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(PredictData)); PredictData predictData = (PredictData) serializer.ReadObject(stream); BEPB.Forecast item = this.airDataContext.ForecastItemsSource.SingleOrDefault<BEPB.Forecast>(x => x.Zone == predictData.Zone); if (item != null) { item.SetData(predictData); } else { item = new BEPB.Forecast(); item.SetData(predictData); this.airDataContext.ForecastItemsSource.Add(item); } } } } }
private void dataService_DayForecastCompleted(object sender, DayForecastCompletedEventArgs e) { if ((e.Error == null) && (e.Result != null)) { this.airDataContext.ForecastItemsSource.Clear(); using (List<TB_Message>.Enumerator enumerator = e.Result.GetEnumerator()) { Func<BEPB.Forecast, bool> predicate = null; TB_Message data; while (enumerator.MoveNext()) { data = enumerator.Current; if (predicate == null) { predicate = x => x.Zone == data.zone; } BEPB.Forecast item = this.airDataContext.ForecastItemsSource.SingleOrDefault<BEPB.Forecast>(predicate); if (item != null) { item.SetData(data); } else { item = new BEPB.Forecast(); item.SetData(data); this.airDataContext.ForecastItemsSource.Add(item); } } } } }