我在我的项目中使用了 MEF 来为插件提供可扩展性。这很好用,但我已经意识到需要将插件程序集与主应用程序隔离,所以至少,如果插件发生,主应用程序不会崩溃。
不幸的是,这似乎比预期的要复杂——需要结合使用 MAF 和 MEF 来提供最佳解决方案。
但是,我的资源和时间不足,所以至少在目前,一个令人满意的解决方法就足够了。
我已经将该AppDomain.CurrentDomain.UnhandledException
事件用于详细记录目的;我注意到这个我还可以检测到AppDomain
导致异常的原因。有没有办法在这一点上实际处理这些未处理的异常?这样我可以有条件地检查异常是否发生在外部程序集中,如果是,则忽略它们,以便主应用程序继续不受影响。
OFC,建议的任何替代方法也将受到赞赏。