从数据库中查找数据,如果没有查找到数据,会报错。代码如下:        //查询语句
        public DataSet GetBSF(string BSF)
        {
            return data.RunProcReturn("select * from tb_Main where bsf='" + BSF + "'", "tb_Main");
        }        /// <summary>
        /// 执行命令文本,并且返回DataSet数据集
        /// </summary>
        /// <param name="procName">命令文本</param>
        /// <param name="tbName">数据表名称</param>
        /// <returns>DataSet</returns>
        public DataSet RunProcReturn(string procName, string tbName)
        {
            SqlDataAdapter dap = CreateDataAdaper(procName, null);
            DataSet ds = new DataSet();
            dap.Fill(ds, tbName);
            this.Close();
            //得到执行成功返回值
            return ds;
        }
为了防止出错错误,我准备用捕捉异常的方法。
请问,如果要捕捉异常,应该如何做呢?

解决方案 »

  1.   

    http://msdn.microsoft.com/zh-cn/library/0yd65esw.aspx
      

  2.   

    都会跑这里来提问,还不会用google 百度 msdn啊。
      

  3.   

    例如SQL语法错误,VS编译是发现不了的,只有执行SQL语句时才会报错。Catch会捕获这些异常并以MessageBox提示给用户。不然有语法错误的话程序就会关闭。
      

  4.   

    任何异常都要捕获,不区分,你仅需要在RunProcReturn调用时捕获异常,而这个RunProcReturn只有可能返回数据库部分的异常,所以不需要区分异常类型,再者,报错了给个原始错误提示的情况下,没必要区分,难道你打算把所有错误信息重写一遍(根据错误类型重写)???
      

  5.   

    不管那类异常,捉住他们老大Exception就差不多了吧
    哈哈
      

  6.   

    对于sql语句的问题,我的做法都是在catch(Exception ex)定一个断点,并监视ex,有异常时就会看到具体是什么问题
      

  7.   


    那就从最开始判断参数是否存在  一步步做验证
    有参数错误 直接返回错误页面  
    还有return 返回 也可以去做判断