using(){}是什么意思,看下面

public int ExecuteSql(string sql)
{
open();
if (conn == null) return 0;
int iResult = 0;
using (SqlCommand sqlcmd = new SqlCommand(sql, conn))
{
try
{
sqlcmd.CommandTimeout = 300;
sqlcmd.ExecuteNonQuery();
iResult = 1;
}
catch (Exception ex)
{
iResult = 0;
}
finally
{
if (conn.State == ConnectionState.Open)
{
conn.Close();
}
}
}
return iResult;
}

楼上的楼上,和楼上都正解,
有些地方你需要注意:
using(){..}
的功能其实就是try {} finally{}
所以你那个里面没有必要再使用try..finally
相当于try{//using大括号里面的所有东西} finally{//执行完毕就执行Dispose;}

另外一个要注意的就是using(..)括号里面的类必须实现了System.IDisposable接口.

最后catch()括号中的异常类型,如果不使用则可以不实例化
比如try{
...
}
//这里不用实例化一个 ex。
catch(Exception){
iResult = 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-26
在using下面的代码域中,可以使用using后面声明的对象,并且在退出using代码域时,自动执行对象的Dispose方法,具体到这里,就是自动执行sqlcmd.SqlConnection.Close()本回答被提问者采纳
第2个回答  2008-12-19
楼上正解,另:执行SQLCOMMAND的ExecuteNonQuery方法时会产生一个空的DataReader,退出using的代码域时也将自动销毁这个DataReader。所以要使用ExecuteNonQuery方法时,最好在using中使用,否则自己要时刻记得用完DataReader后手动close
第3个回答  2008-12-24
using()可以不用你关闭连接,它自己可以关闭
第4个回答  2008-12-20
using(){}是用来定义一个范围的

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网