仅在给定Type实例的情况下从MEF容器导出

Nat*_*ley 12 c# mef

我有一个场景,我必须从我的CompositionContainer实例导出,但我只有一个类型可以使用; 我不知道编译时的类型,因此我无法以通常的通用方式检索导出的对象.

通常你会这样做:

_container.GetExportedObject<IMyType>();
Run Code Online (Sandbox Code Playgroud)

但就我而言,我有这个:

Type someType = ... ;
_container.HowDoIGetTheExport(someType);
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

Nat*_*ley 21

找到答案:

var export = _container.GetExports(someType, null, null).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

  • 不要忘记你寻求的东西是出口.价值 (8认同)