[英]How does MEF manage to instantiate an exported part which is an internal class of an external assembly?
我的问题很简单,但遗憾的是我找不到任何答案。
使用MEF ,我可以在类库程序集中指定一些内部导出和导入,如下所示:
[Export]
internal class SomeExport
{ }
[ModuleExport(typeof(SomeModule))]
internal class SomeModule : IModule
{
[ImportingConstructor]
internal SomeModule(SomeExport instance)
{ }
}
我的CompositionContainer位于主EXE程序集中,但不知何故它设法在类库程序SomeExport
实例化SomeExport
对象,以便我可以使用它。 通常,我的内部类库类型不应该从EXE程序集中访问,但不知何故我创建了我的实例。
它是如何工作的?
MEF通常使用反射来发现部件并实例化它们。 反思不受internal
甚至private
能见度的限制。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.