2010-03-10 4 views
4

Salut Je suis dans un scénario où je pense à avoir plusieurs modules, et laisser les modules dépend d'autres modules. Dites-nous que nous sommes en train de construire un système d'entreprise alors qu'une partie est facturée et que nous avons des clients dans différentes branches.Prism avec plusieurs modules et modules dépend de

Alors une industrie peut vouloir utiliser certains outils et créer la facture à sa manière, et une autre industrie peut vouloir le faire d'une autre manière. Donc, je pense que nous pouvons faire un module par méthode de facture de création, donc quand l'application est chargée, nous pouvons voir dans la configuration quel module du module factures de caisse doit être chargé.

Donc à ma première question, est-ce la façon de résoudre ce problème ou existe-t-il de meilleures solutions?

Ma prochaine question est où devrais-je les mettre dans un arbre?

Les modules qui dépendent du module Facturation doivent-ils être placés sous le module Facturation ou au même niveau?

Répondre

0

Nous avons choisi d'aller avec des modules, et je les ai mis sous le module en fonction de l'arbre. Ça a vraiment bien fonctionné.

0

Je voudrais d'abord travailler sur la création d'un viewengine pour charger la vue en fonction des critères de contexte. Les critères peuvent être locataire (nom de domaine), périphérique, taille de la vue, thème actuel (toutes ces interfaces dépendent de votre viewengine)

Peut-être utiliser une approche comme DataTemplateSelector dispersée sur vos vues nécessitant une personnalisation. Vous voudrez probablement l'approcher comme dans asp.net mvc pour résoudre les vues (de sorte que vous avez la possibilité de remplacer les vues) en fonction des chemins de recherche de vue.

Vous devez pouvoir charger dans les ressources de l'application les styles de client pour une personnalisation personnalisée.

Je repousserais dans la création de vos dépendances de grain fin jusqu'à ce que ce qui précède commence à montrer des problèmes de maintenance. Pour une logique métier nécessitant une personnalisation, vous pouvez utiliser un modèle de stratégie.

Je vois que cela coûte plus cher de le faire dès maintenant et de devoir gérer ces longues chaînes de dépendance. Le coût de mise en œuvre plus tard (après une bonne option pour les entreprises exige) ne prendra que quelques heures de travail en utilisant ModuleInfo comme cela est expliqué ici: Silverlight PRISM Creating a custom module catalog

Questions connexes