MVVM: должен ли ViewModel иметь члена другой ViewModel?

Зависимый ViewModel вводится через конструктор (контейнер IoC).

Пример: ProductSelectionViewModel использует ShoppingBasketViewModel.

Это обычная практика или это рекомендуемый способ? Я так не думаю...

Как это должно быть сделано правильно?

Должен ли вид использовать 2 ViewModels? Шаблон посредника? Событие управляемое?

Лично мне не нравится последний.

1 ответ

Решение

Нет ничего плохого в том, что модель представления имеет прямую ссылку на другую модель представления, если это обязательная зависимость, то внедрение ее через конструктор - это нормально.

Если вы хотите, чтобы модель представления могла создавать новые экземпляры другой модели представления, тогда можно использовать внедрение фабричного типа модели представления.

Другие вопросы по тегам