在我的MVVM Light应用程序中,ViewModel有一些资源,在应用程序关闭时必须将其释放。我在ViewModelLocator中有一个CleanUp方法来完成此操作。在我的应用程序中,什么地方是调用CleanUp方法的正确位置。
public class ViewModelLocator
{
/// <summary>
/// Initializes a new instance of the ViewModelLocator class.
/// </summary>
public ViewModelLocator()
{
ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);
SimpleIoc.Default.Register<MainViewModel>();
}
public MainViewModel Main
{
get
{
return SimpleIoc.Default.GetInstance<MainViewModel>();
}
}
public static void Cleanup()
{
var main=SimpleIoc.Default.GetInstance<MainViewModel>();
main.Dispose();
}
}
public class MainViewModel:ViewModelBase, IDisposable
{
public void Dispose()
{
disposableResoure.Dispose();
}
}