簡體   English   中英

MEF如何管理實例化導出的部件,該部件是外部組件的內部類?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM