代码之家  ›  专栏  ›  技术社区  ›  Richard Ev

应用程序启动中的间歇异常-如何取消启动应用程序?

  •  2
  • Richard Ev  · 技术社区  · 15 年前

    在我们 Application_Start 事件处理程序我们正在执行一些由于文件锁定问题而间歇性失败的操作。在这种情况下,我们希望将应用程序返回到“未启动”状态。

    我的意思是,用户将被显示一个错误页面,然后当用户下次访问该站点时, 应用程序启动 事件将再次激发。

    我们使用的是ASP.NET 3.5、WebForms和MVC。

    2 回复  |  直到 15 年前
        1
  •  3
  •   Nariman    15 年前

    AppDomain.Unload 提供你想要的,但我不推荐。

    有很多捕获;以编程方式拆下应用程序域并不是没有它自己的一组问题(例如,如果线程在本机代码中被阻塞,您可能会看到 无法卸载AppDomainException )在我看来,这是一个糟糕的设计。

    你想做的是非常不传统的,我会一起重新考虑这个方法。如果您只需要在应用程序域级别执行一次代码,那么有很多更好的方法可以做到这一点,例如静态或httpruntime缓存中的标志。请注意Web花园和并发场景。

    祝你好运。

        2
  •  0
  •   Tommy    15 年前

    我很确定没有办法从应用程序中退出/强制停止WebForms应用程序。但是,防止应用程序启动的一个不重要的方法是在应用程序启动时生成一个未处理的错误。这将阻止启动,下次点击webforms应用程序时,应用程序启动将重试。

    推荐文章