Призма с несколькими модулями и модулями зависит от - PullRequest
4 голосов
/ 10 марта 2010

Привет Я нахожусь в сценарии, где я думаю о том, чтобы иметь несколько модулей, и пусть модули зависят от других модулей.

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

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

Итак, на мой первый вопрос, это способ решить эту проблему или есть более лучшие решения?

Мой следующий вопрос: куда мне положить их на дереве?

Должны ли модули, которые зависят от модуля фактурирования, быть помещены под модуль фактурирования или того же уровня?

Ответы [ 2 ]

0 голосов
/ 20 декабря 2011

Мы решили пойти с модулями, и я поместил их под зависимый модуль в дереве. Это сработало очень хорошо.

0 голосов
/ 14 декабря 2011

Сначала я бы поработал над созданием viewengine для загрузки представления на основе критериев контекста. Критериями могут быть клиент (имя домена), устройство, размер представления, текущая тема (все эти интерфейсы зависят от вашего viewengine)

Может быть, использовать такой подход, как DataTemplateSelector, разбросанный по вашим представлениям, нуждающимся в настройке. Возможно, вы захотите приблизиться к нему, как в asp.net mvc, чтобы разрешить представления (чтобы у вас была возможность переопределять представления) на основе путей поиска представлений.

Вы должны иметь возможность загружать в ресурсы приложения стили арендатора для пользовательского брендинга.

Я бы отодвинулся в создании ваших мелкозернистых зависимостей до тех пор, пока вышеописанное не начнет показывать проблемы с обслуживанием. Для бизнес-логики, требующей настройки, вы можете использовать шаблон стратегии.

Я вижу, что сейчас стоит дорого заплатить, чтобы разобраться с этим, и мне приходится управлять этими длинными цепочками зависимостей. Стоимость внедрения позже (после того, как этого требует хорошая бизнес-функция) займет всего несколько часов работы с использованием ModuleInfo, как описано здесь: Silverlight PRISM Создание пользовательского каталога модулей

...