public ежимРаботыVM(УстановкаРежимРесурс устройствоРежимРесурс) { OperatingModePD = new ObservableCollection <ежимРаботыАгрегата>(); cfc = new CodeFirstContext(); //cfc.СправочникРесурсовSet.Load(); //cfc.УстройствоРежимРесурсSet // .Where(w => w.УстановкаId == устройствоРежимРесурс.УстановкаId // && w.РесурсId == устройствоРежимРесурс.РесурсId) // .Load(); //currentустройствоРежимРесурс = cfc.УстройствоРежимРесурсSet // .Local // .Where(w => w.РесурсId == устройствоРежимРесурс.РесурсId // && w.УстановкаId == устройствоРежимРесурс.УстановкаId // && w.РежимРаботыУстановкиId == устройствоРежимРесурс.РежимРаботыУстановкиId) // .FirstOrDefault(); ListResource = WorkCollection.GetСправочникРесурсов <СправочникРесурсов>(cfc); //selectedRes = cfc // .УстройствоРежимРесурсSet // .Local // .Where(w => w.УстановкаId == устройствоРежимРесурс.УстановкаId // && w.РесурсId == устройствоРежимРесурс.РесурсId) // .Select(s => s.СправочникРесурсов) // .FirstOrDefault(); var ContextCollection = cfc.УстройствоРежимРесурсSet.Local; //selectedRes = ContextCollection // .Where(w => w.УстановкаId == устройствоРежимРесурс.УстановкаId // && w.РесурсId == устройствоРежимРесурс.РесурсId) // .Select(s => s.СправочникРесурсов) // .FirstOrDefault(); //TODO 2021-01-10: Вынести в отдельный класс по заполнению коллекций. //foreach (УстановкаРежимРесурс item in ContextCollection) //{ // OperatingModePD.Add(item.РежимРаботыСиловогоАгретата); //} //currentустройствоРежимРесурс = ContextCollection // .Where(w => w.РесурсId == устройствоРежимРесурс.РесурсId // && w.УстановкаId == устройствоРежимРесурс.УстановкаId // && w.РежимРаботыАгрегатаId == устройствоРежимРесурс.РежимРаботыАгрегатаId) // .FirstOrDefault(); }
public ежимРаботыVM(СиловойАгрегатВУстановке агрегатВУстройстве) { cfc = new CodeFirstContext(); cfc.УстройствоРежимРесурсSet.Load(); cfc.СправочникРесурсовSet.Load(); cfc.ежимРаботыАгрегатаSet.Load(); cfc.СиловойАгрегатВУстройствеSet.Load(); OperatingModePD = new ObservableCollection <ежимРаботыАгрегата>(); var contextCollectionOperationModes = cfc .ежимРаботыАгрегатаSet .Local .Where(w => w.СиловойАгрегатВУстройстве .Id.Equals(агрегатВУстройстве.Id)); // Получение внешнего ключа из текущего контекста. currentPowerDev = cfc .СиловойАгрегатВУстройствеSet .Local .Where(w => w.Id == агрегатВУстройстве.Id) .FirstOrDefault(); // Установка значения combobox в ранее выбранное состояние. selectedТипЕдиниц = currentPowerDev.ТипЕдиницИзмерения; // Получение выбранного ресурса. //selectedRes = currentPowerDev.УстановкаРежимРесурс // .Where(w => w.СиловойАгрегатВУстановке.Id == currentPowerDev.Id) // .Select(s => s.СправочникРесурсов) // .FirstOrDefault(); int idrecord = cfc.УстройствоРежимРесурсSet .Local .Where(w => w.СиловойАгрегатВУстановкеFK == currentPowerDev.Id) .FirstOrDefault().СправочникРесурсовFK; selectedRes = cfc.СправочникРесурсовSet.Local.Where(w => w.Id == idrecord).FirstOrDefault(); currentустройствоРежимРесурс = cfc .УстройствоРежимРесурсSet .Local .Where(w => w.СиловойАгрегатВУстановкеFK == currentPowerDev.Id && w.СправочникРесурсовFK == selectedRes.Id) .FirstOrDefault(); //if (collection.FirstOrDefault() != null) //{ // currentPowerDev = collection // .FirstOrDefault() // .СиловойАгрегатВУстройстве; //} //TODO 2021-01-10: Вынести в отдельный класс по заполнению коллекций. foreach (ежимРаботыАгрегата item in contextCollectionOperationModes) { OperatingModePD.Add(item); } ListResource = WorkCollection.GetСправочникРесурсов <СправочникРесурсов>(cfc); OperatingModePD.CollectionChanged += OperatingModePD_CollectionChanged; }