В моей базе данных 5 таблиц со следующими полями:
- Заказчик: ID (int), Имя (строка)
- Проект: ID (int), Имя (строка)
- Задача: ID (int), Имя (строка)
- Customer_Project: ID (int), CustomerID (int) ProjectID (int)
- Project_Task: ID (int), ProjectID (int), TaskID (int)
Последние две таблицы создают ассоциации, поэтому любое количество клиентов может быть связано с любым количеством проектов.То же самое с проектами и задачами.
Я пытаюсь придерживаться хороших стандартов MVVM.В моем элементе управления WPF я уже связал списки в моем представлении с клиентами, задачами и проектами в моей модели представления.У меня есть привязанное свойство TwoWay SelectedCustomer.В моей модели у меня есть объекты для всех этих элементов, и я могу ссылаться на них по идентификатору, имени и т. Д.
Что я хочу сделать, это создать список SelectedProjects и SelectedTasks, где пользователь выбирает только клиентаиз списка, а затем два списка заполняются «связанными» проектами в соответствии с Customer_Project, а также с Projects_Tasks.
Я действительно не хочу взламывать эту функциональность при использовании набора циклов foreach, яЯ полагаю, что должен быть удобный способ с использованием соединений Linq и привязки к динамическим ObservableCollections.
Есть идеи?