private void AssignOneValue(KeyValuePair<string, ObservableCollection<FlightDataEntitiesRT.ParameterRawData>> one, NHFAChartSubModel subModel, Dictionary<int, NHFAChartItem> secondMap) { foreach (var vals in one.Value) { NHFAChartItem item = null; if (secondMap.ContainsKey(vals.Second)) { item = secondMap[vals.Second]; } else { item = new NHFAChartItem(); secondMap.Add(vals.Second, item); } item.XValue = vals.Second; if (one.Key == "NHL") { item.NHL = vals.Values[0]; } else if (one.Key == "NHR") { item.NHR = vals.Values[0]; } //subModel.Add(item); } }
internal override FAChartSubModel ToFAChartSubModel() { var subModel = new NHFAChartSubModel() { ParameterID = this.ParameterID }; var pairs = from data in this.viewModel.EntityData where data.Key.StartsWith(this.ParameterID) select data; Dictionary<int, NHFAChartItem> secondMap = new Dictionary<int, NHFAChartItem>(); foreach (var one in pairs) { this.AssignOneValue(one, subModel, secondMap); } var sorted = from one in secondMap orderby one.Key ascending select one.Value; foreach (var m in sorted) { subModel.Add(m); } return subModel; }