我正在使用带有静态 CompositionContainer 的 MEF。我的班级像这样使用这个容器:
public void SomeClass
{
[Import(typeof(AnotherClass)]
private AnotherClass Instance {get;set;}
public SomeClass()
{
MEFContext.RegisterAttributedPart(this); // this basically calls CompositionContainer.ComposeParts(this);
}
}
现在的问题是,SomeClass 的实例永远不会被释放,因为 CompositionContainer 为它保留了一个实例。我怎样才能释放这个实例?
附加信息:
- AnotherClass 有一个 PartCreationPolicy 和 CreationPolicy.Shared