try
{
conn buy_ad = new conn();
buy_ad.jianfen(username, jiage * month);
buy_ad.buy_ad(username,adid,ad_title, ad_link,pic,last_time);
Response.Redirect("msg.aspx?action=buy_ad_ok");
}
catch
{
Response.Redirect("msg.aspx?action=error");
}我单步跟踪,执行buy_ad.buy_ad(username,adid,ad_title, ad_link,pic,last_time);完全没有错误提示,但是结果却执行到catch里的跳转了,去掉了try才跳转到Response.Redirect("msg.aspx?action=buy_ad_ok");是怎么回事呢?
{
conn buy_ad = new conn();
buy_ad.jianfen(username, jiage * month);
buy_ad.buy_ad(username,adid,ad_title, ad_link,pic,last_time);
Response.Redirect("msg.aspx?action=buy_ad_ok",false);
}
catch
{
Response.Redirect("msg.aspx?action=error",false);
}
看看 ex是什么东西?不会无缘无故进去的
{
string aa = ex.Message;
Response.Redirect("msg.aspx?action=error");
}
得到aa值为:“正在终止线程。”这个是怎么回事呢?
因为在跳转页面时,这个线程要先进行终止,再执行跳转
Response.Redirect("msg.aspx?action=buy_ad_ok",false);加了false参数,是告诉不终止线程直接跳转!
如果放在try catch里面,要这样写,Response.Redirect("url",true);