Я уже некоторое время пользуюсь Prism и наслаждаюсь тем, насколько проще отсоединить мои модули.
Это особенно хорошо работает для представлений и моделей представлений, поскольку вы можете внедрять модели представлений через интерфейсы, а представления - через менеджера регионов.
К сожалению, это работает только тогда, когда мои взгляды являются полноценными пользовательскими элементами управления, если я не пропустил что-то здесь (и я искренне надеюсь, что это так).
Много раз я создаю ViewModel и соответствующий DataTemplate. Затем они могут использоваться другими сборками для составления представления.
Моя проблема в том, что я не вижу способа ссылаться на эти шаблоны данных без ссылки на содержащую сборку, поэтому в моем файле xaml я пишу что-то вроде:
<ResourceDictionary Source="pack://application:,,/......>
Конечно, это на самом деле не отделено, хотя я стараюсь убедиться, что я не обращаюсь к сборке где-либо еще в моем коде.
Еще одним решением, о котором я подумал, было поместить шаблоны данных в проект инфраструктуры, но мне это тоже не очень нравится, так как я хочу, чтобы в нем содержалось все, что принадлежит модулю (за исключением интерфейсов, конечно, ).
Итак, у кого-нибудь есть хороший обходной путь, или я пропустил какую-то функцию Prism?