In much simplified terms, our WPF smart client startup sequence looks somewhat like this:
ContainerStartup()
{
Module1.Startup();
Module2.Startup();
Module3.Startup();
}
Each module may or may not use DevForce as its data access mechanism (some are more enlightened than others). No module knows about other modules.
We know we have a performance issue for discovery, so we believe we should use the SearchPatterns.Clear() then set the pattern (in each case the actual assembly) where the classes of interest reside.
So, the question is, how can we make this work, as each module will (possibly) access devforce as part of its startup processing, and therefore initiate the MEF composition machinery. I am concerned that the CompositionHost will not allow for multiple initializations...?
or perhaps it just works by MEF magic?