Oct 16, 2012 at 3:59 PM
Edited Oct 16, 2012 at 4:00 PM
Based on my understanding if you want to ensure that you modules are loaded and initialized in the right order, you should define the corresponding Module Dependencies, which will depend on which approach you used to registered your modules.
In my opinion using the Registering Modules Using a Configuration File approach seems to suit best your needs, as you could define the different specific locations of each of the modules there and also the corresponding dependencies for
each of the defined modules. This way similarly like in the App.Config
you posted you could also define the additional modules you have with its corresponding location and dependencies.
Regarding the code you posted, one thing I found in your posted App.Config file, is that when defining the
AssemblyQualifiedName for the Xz.Domain module in the
moduleType your defined only the module namespace (Xz.Domain) and you should also define the class of the module or you will receive a
moduleType exception, for example this could be changed to:
On the other hand, as far as I know using the Discovering Modules in a Directory approach, will portray the limitation that your modules may have to be placed in the same folder location defined when creating the
DirectoryModuleCatalog, when following this approach dependencies can be defined by using declarative attributes.
Finally the other approach provided by Prism for registering your modules, is to do this directly in code, which requires having a reference to them by the application instead of being loaded at run time.
For more information and examples about this different approaches you could check the following resources provided with
I hope you find this handy,