【问题标题】:Server.Transfer and System.Threading.ThreadAbortExceptionServer.Transfer 和 System.Threading.ThreadAbortException
【发布时间】:2009-05-08 14:28:09
【问题描述】:

http://support.microsoft.com/kb/312629/EN-US/

我也在我的应用程序中使用 reponse.direct,但我没有遇到异常。知识库文章建议的解决方法(Server.Execute)对我不起作用。如果我使用 Server.Execute,我会从目标页面上的 Ajax Toolkit 获得很多 javascript 异常,但我没有深入研究原因。

我的问题 - 您认为反对将例外视为“已知限制”并继续前进的理由是什么?

我在这个非常特殊的情况下使用 Server.Transfer 的原因是我想屏蔽实际正在执行的页面的(真实)目标 url。它工作得很好,除了这个异常(用户永远不会看到)。

【问题讨论】:

    标签: multithreading exception server.transfer


    【解决方案1】:

    确保您没有在异常处理程序中调用 Server.Transfer()(try..catch/finally)。

    编辑:

    Server.Transfer 总是在完成时引发 ThreadAbortException。如果将其包装在异常处理程序中,则应捕获显式异常类型,而不仅仅是“异常”。

    请参阅MSDN 上的 Server.Transfer 帮助。这是关于ThreadAbortException的信息

    【讨论】:

    • 为什么不呢?如果我没有在原始页面中捕获它,则异常会在调用中继续存在。
    猜你喜欢
    • 2010-10-23
    • 2012-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-27
    • 1970-01-01
    • 1970-01-01
    • 2010-09-25
    相关资源
    最近更新 更多