在使用Prism和MEF的Silverlight 5應用程序中使用NonShared對象發生內存泄漏問題,因此試圖使用ExportFactory T>創建我的ViewModels,這應該是一個解決方案從我讀過的。但是,在ExportLifetimeContext上調用Dispose不會從內存中刪除對象。以下代碼創建DataEntryViewModel的一個實例,但稍後處理ExportLifetimeContext兩行的調用不起作用。有什麼建議麼?Silverlight MEF ExportFactory <T>調用Dispose不處理
[Export("DataEntry", typeof(UserControl)), PartCreationPolicy(CreationPolicy.NonShared)]
public partial class DataEntry
{
private readonly ExportFactory<DataEntryViewModel> _ExportFactory;
[ImportingConstructor]
public DataEntry(ExportFactory<DataEntryViewModel> exportFactory)
{
_ExportFactory = exportFactory;
var context = _ExportFactory.CreateExport();
DataContext = context.Value;
context.Dispose();
InitializeComponent();
}
}