数据库连接层中我把SqlException都抛出来了业务层也把SqlException抛了出来
try
{
conn = DB.GetConn();
SqlCommand cmd = new SqlCommand(strSql, conn);
SqlDataReader sdr = cmd.ExecuteReader();
if (sdr.Read())
bResult = true;
}
catch(SqlException e)
{
throw e;
}
finally
{
DB.CloseConn();
}UI层代码 //验证登陆名
if (StaffEntity.IsExist(loginName))
{
//验证登陆名与密码
if (StaffEntity.IsCorrect(loginName, pwd))
{
Session["User"] = StaffEntity.GetStaffID(loginName);
this.lblfail.Text = "";
Response.Redirect("Index.aspx");
}
else
this.lblfail.Text = "密码错误!";
}
else
this.lblfail.Text = "登录名错误!";现在我把数据库服务关掉了,如果UI层不进行try catch,数据连接层就会出错、崩溃掉
请问UI层的每用到业务层的代码都要try catch吗? 有没有什么方法能让它出错了就跳转到ErrPage页面呢?
try
{
conn = DB.GetConn();
SqlCommand cmd = new SqlCommand(strSql, conn);
SqlDataReader sdr = cmd.ExecuteReader();
if (sdr.Read())
bResult = true;
}
catch(SqlException e)
{
throw e;
}
finally
{
DB.CloseConn();
}UI层代码 //验证登陆名
if (StaffEntity.IsExist(loginName))
{
//验证登陆名与密码
if (StaffEntity.IsCorrect(loginName, pwd))
{
Session["User"] = StaffEntity.GetStaffID(loginName);
this.lblfail.Text = "";
Response.Redirect("Index.aspx");
}
else
this.lblfail.Text = "密码错误!";
}
else
this.lblfail.Text = "登录名错误!";现在我把数据库服务关掉了,如果UI层不进行try catch,数据连接层就会出错、崩溃掉
请问UI层的每用到业务层的代码都要try catch吗? 有没有什么方法能让它出错了就跳转到ErrPage页面呢?
解决方案 »
- 有没有办法在异步回凋时,在服务器端获取上传控件的流?
- 求asp.net实现类似qq的屏幕截图程序
- treeview的节点能否全部展开,不允许收缩?
- 用Grid View与Form View组合,向数据库插入新记录出错
- URL重写之后,IsPostBack始终未flase..................终于成为贫农了............
- sqlDataReader能不能把记录移到某一页?
- 当选择dropdownlist的第一行时触发事件?
- 哪位能介绍几个比较好的关于.net方面的英文blog网站?
- 关于asp.net中前台事件
- 已经装载了数据的DataTable可不可以改变某一列的数据类型?比如由Int改为VarChar。望高手指教。。。
- Server Error in '/Admin' Application. Compilation Error
- jquery的时间UI出问题了貌似是ajax控件导致的
一般情况下访问数据库绝对会try{}catch{}抛出数据库连接异常
我把数据库服务关掉后,登录页面,在数据库层就报了异常了