今天在调试程序的时候,偶然间发现了一个错误,但是程序却可以继续执行下去,上网一搜索,才知道原因
大概描述如下:
try
{
regcomm.ExecuteNonQuery();
Response.Redirect("regok.aspx");
}
catch
{
Response.Redirect("regerr.aspx");
}
就是说成功了,也执行Response.Redirect("regerr.aspx");
数据库确实是添加上记录了,我后来捕获了错误,好像是
+ $exception {由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。} System.Exception {System.Threading.ThreadAbortException}
解决方法:
把Response.Redirect();语句从TRY中拿出
解决方法2:
解决方法 :Response.Redirect("regok.aspx",false);
解决方法3:
还有种方法
try
{
Response.Redirect("regok.aspx",false);
}
catch (System.Threading.ThreadAbortException e)
{
throw;
}