I am currently working on a C# based application which loads a lot of different modules (.net drivers for hardware components etc.). The application should offer some kind of plugin/add-in manager to select dedicated modules (only a dedicated group of devices, filters, component). Based on the fact that there is a well established framework MEF which comes out of the box from MS, I thought it would be a good idea to give it a try.
The main problem I am currently facing is the fact that after scanning folders for add-ins via the DirectoryCatalog all assemblies are loaded into the process (currently nothing is instantiated because I use the "Lazy" mechanism).
Nevertheless I want to avoid loading all the assemblies in the process when the user decides later on to pick only a few of them.
So I try to find a way to get the add-in metadata without keeping the assemblies loaded within the process. I have seen that the Mono.Addins framework seems to support such a scenario with XML based manifests - but I am not sure if something similar could be done with MEF?