另请参阅:https://github.com/iwhp/Mef1-vs-Mef2-CycleComposition
问题报告于:https://github.com/dotnet/corefx/issues/38301
MEF1
在MEF1中,即使这些组件是非共享的([PartCreationPolicy(CreationPolicy.NonShared)]
),也可以在两个组件之间找到循环引用(请参阅ClassA和ClassB)。
这可以通过使用Lazy
public Lazy<ClassB> ClassB { get; set; }
MEF2 林MEF2这是行不通的。 有解决方法吗?