Getting an export from an MEF container given only a Type instance

c#, mef

Solution

Found the answer:

var export = _container.GetExports(someType, null, null).FirstOrDefault();

Problem

I have a scenario where I have to get an export from my CompositionContainer instance but I only have a Type to work with; I don't know the type at compile time, hence I can't retrieve the exported object in the normal generic way. Normally you would do this: ``` _container.GetExportedObject<IMyType>(); ``` But in my case, I have this: ``` Type someType = ... ; _container.HowDoIGetTheExport(someType); ``` Any ideas?

Original source