我正在寻找一个“最佳实践”(如果有最好的)来干净地关闭使用 MEF 和 PRISM4 的 WPF 应用程序。最终,我正在寻找某种“关闭服务”来管理从 Shell 到想要验证关闭应用程序是否可以的任何视图模型(或其他订阅者)的所有事件/命令。事件聚合器是最干净的方式吗?其他意见/选择?
理想情况下,我的 ToolbarRegion 中的 ToolbarView 上有一个按钮(我的 Shell 中的 2 个区域中的 1 个)。此按钮将调用我的 ToolbarViewModel 上的命令(引用我的 ToolbarControler 上的命令),这反过来会做两件事(我认为?)...首先,通知所有订阅者它的关闭时间并允许他们中的任何一个取消关闭并且...其次,如果没有取消,则以某种方式通知外壳程序关闭。我的应用程序的关闭模式设置为“ShutdownMode.OnMainWindowClose”,因此如果 Shell 关闭,我应该已准备就绪。
有人可以帮我解决这个问题吗?