我知道关于这个异常的所有内容,请阅读这里的msdn文章http://support.microsoft.com/kb/312629/EN-US/但是当我的老板不希望我为Response.End投入错误时,我不知道如何处理这个问题。
这就是我所拥有的:
else
{
try
{
VoidlOrder(transactionID);
}
catch (Exception ex)
{
LogError(ex.ToString());
}
finally
{
RedirectUser(sessionID,"showfmsg=1", true);
}
}
RedirectUser只是我们运行的一个实用工具方法,最终为reponse.redirect resopnse.end param传入true。
那么还有什么其他选择,除了把这个param作为假?他说要抓住它并做点什么......好吗?我没有看到任何其他修复,而不是每次都将false发送到此调用,因为我无法通过此异常..我每次都得到它。
已更新
尝试了这个但是我仍然在外部catch中遇到了一个threadabortexception:
else
{
try
{
VoidOrder(transactionID);
}
catch (Exception ex)
{
LogError(ex.ToString());
}
finally
{
try
{
RedirectUserBackToCheckout(sessionID, "showfmsg=1", true);
}
catch (ThreadAbortException)
{
}
}
}
}
catch (Exception ex)
{
// some other logic
}
答案 0 :(得分:2)
你的问题没有意义,但你可能正在寻找
catch(ThreadAbortException) { Thread.ResetAbort(); }
击> <击> 撞击>
编辑:您需要在Thread.ResetAbort();
区块中致电catch
。