ModuleDependency support via configuration

Topics: CAB & Smart Client Software Factory
Dec 17, 2005 at 10:33 AM
originally posted by: jdressel

The current implementation of declaring ModuleDependencies has you declare dependencies via an Assembly ModuleDependencyAttribute. My team's concern is the limitation that you've made this declaration at compile time.

To use the GPSModule as an example:
Let's suppose that the IGPSService and IDistanceCalculatorService interfaces were declared in an 'Interfaces' assembly and you have competing implementations in separate assemblies. To provide the GPSModule's WorkItem & View with the necessary service implementation at runtime you need to declare a module dependency via the ModuleDependency attribute at compile time.

We are thinking of providing configuration time module dependency declaration by modifying the SolutionProfile, ModuleLoaderService and ModuleMetadata to just leverage the current SolutionProfile mechanism. For example, in addition to the current properties on IModuleInfo, we would add another property IModuleInfo[] ModuleDependencies and so on.

Has this been discussed before? Is this something that may be of use to the general community?

Thx

PS: A module versioning strategy in on our agenda as well that is likely related to this.
Dec 20, 2005 at 6:46 AM
originally posted by: BradWilsonMSFT

There are a lot of scenarios we didn't cover with our basic module loading system. This is one that tends to come up (as does the lack of some kind of service dependency system).

I'm sure the community would be very interested in this! :)