简介:
try catch我们之前说过是处理异常的,其实主要处理异常的是catch,而finally中是释放资源的,说白了using在C# 中也是让使用资源的对象释放资源的,无疑和finally差不多,所以使用起来using会更加的方便,接下来我们做一个对比:
对比trycatch:
trycatch类:第一段代码是原始代码,第二段是重构的trycatch代码
/// <summary>
/// 该方法执行传入则增删改的SQL语句
/// </summary>
/// <param name="sql">要执行的SQL语句</param>
/// <returns>返回更新的记录数</returns>
public int ExecuteNonQuery(string sql)
{
string connStr = @"Server=DESKTOP-OU60RPC\SQLSV; Database=newssystem;User ID=sa;Password=123456";
SqlConnection conn = new SqlConnection(connStr);
conn.Open();
SqlCommand cmd=new SqlCommand(sql,conn);
int res=cmd.ExecuteNonQuery();
conn.Close();
return res;
}
首先做三个私有的变量为空,下面的就不用再实例化了;其次制作一个自己的本类(SQLhelper)的构造函数方便下面的使用;最后在使用trycatch连接起来,这样看起来代码量并没有减少太多,虽然减少了耦合,但是看起来还增加了很多东西。
private SqlConnection conn = null;
private SqlCommand cmd = null;
private SqlDataReader sdr