Я создаю инструмент, целью которого является загрузка файла на основе нескольких параметров.
Первый шаг заключается в установке (или получении) этих параметров.
Различные наборы параметровизвлекается (скажем, через файлы конфигурации) с помощью FileDownloadsManager: он точно знает, какие параметры использовать для загрузки нужного файла.
эти параметры хранятся в классе, и у меня есть список экземпляров этогоclass.
Это означает, что я могу загрузить свой файл с несколькими возможными наборами параметров.
Вокруг этих ParameterSets я построил ParametersSetsViewModels, чтобы я мог отобразить их в списке и добавить некоторыеСвойства только для просмотра.Внутренне ParametersSetsViewModels имеют ссылку на базовые ParametersSets, используемые в качестве источника для членов модели представления.
Теперь, когда я выбираю свой набор параметров, я хотел бы, чтобы соответствующий файл был загружен.
Чья это ответственность?
У меня такое ощущение, что еслиViewModel слишком активен, имея метод, который возвращает загруженный файл, это было бы против шаблона MVVM;что вы думаете по этому поводу?
Бонус: загрузка должна осуществляться в фоновом режиме с помощью BackgroundWorkers или асинхронных методов WebClient.