异常处理

外围代码:
        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;
 }
代码2:
BLL类中
public void GetEmployee()
{
            DAL da = new DAL();
            try
            { 
            da.GetEmp();
            }
            catch (Exception  )
            {
                throw ;
            }
}
代码2等同于没有做异常处理,代码2最好不使用异常处理。
代码1和代码2的区别:外围代码调用了代码1后,ex的StackTrace中的信息,只能拿到BLL以及BLL之后的堆栈信息,即代码1执行后,将抛弃其被调用之前的堆栈信息。而代码2则将保留完整的堆栈信息。
posted @ 2013-05-20 18:06  暴走小白  阅读(119)  评论(0编辑  收藏  举报