外围代码:
private void button1_Click(object sender, EventArgs e) { try { BLL bl = new BLL(); bl.GetEmployee(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }代码1:
BLL类中
public void GetEmployee() { DAL da = new DAL(); try { da.GetEmp(); } catch (Exception ex ) { throw ex; }public void GetEmployee() { DAL da = new DAL(); try { da.GetEmp(); } catch (Exception ) { throw ; }}
代码1和代码2的区别:外围代码调用了代码1后,ex的StackTrace中的信息,只能拿到BLL以及BLL之后的堆栈信息,即代码1执行后,将抛弃其被调用之前的堆栈信息。而代码2则将保留完整的堆栈信息。
转载于:https://www.cnblogs.com/RealAlex/archive/2013/05/20/3089087.html