public ФактическоеПотреблениеVM(ПланНормативныйТехнологический планНормативный) { cfc = new CodeFirstContext(); ActualConsumption = new ObservableCollection <ФактическоеПотребление>(); cfc.ФактическоеПотреблениеSet .Where(w => w.ПланНормативныйТехнологический.Id == планНормативный.Id) .Load(); var contextCollection = cfc.ФактическоеПотреблениеSet.Local; foreach (ФактическоеПотребление item in contextCollection) { ActualConsumption.Add(item); } //ActualConsumption = WorkCollection.GetФактическоеПотребление<ФактическоеПотребление>(cfc); cfc.УстановкаSet.Load(); Devices = WorkCollection.GetТехнологическоеУстройство <ТехнологическаяУстановка>(cfc); UpLoadComboBoxes(планНормативный); //if (ActualConsumption.Count > 0) //{ // UpLoadComboBoxes(планНормативный); //} ActualConsumption.CollectionChanged += ActualConsumption_CollectionChanged; }
private void UpLoadComboBoxes(ПланНормативныйТехнологический план) { var devices = cfc.УстановкаSet.Local; cfc.СправочникSet.Load(); var collection = cfc.СправочникSet .Local .Where(w => w.Id == план.Id) .Cast <ПланНормативныйТехнологический>() .FirstOrDefault(); currentPlan = collection; selectedDev = (ТехнологическаяУстановка)devices .Where(w => w.УстройствоId == currentPlan.УстройствоFK) ?.FirstOrDefault(); if (selectedDev != null) { selectedPowerDev = selectedDev .СиловойАгрегатВУстройстве .Where(w => w.ТехнологическаяУстановка.УстройствоId == selectedDev.УстройствоId && w.Id == currentPlan.ТипЭнергииId) ?.FirstOrDefault(); if (selectedPowerDev != null) { selectedOperationMode = selectedPowerDev .ежимРаботыАгрегата .Where(w => w.СиловойАгрегатВУстройстве.Id == selectedPowerDev.Id && w.Id == currentPlan.ежимРаботыId) ?.FirstOrDefault(); } } }