当前位置: 代码迷 >> ASP.NET >> 杨中科老师错了?sql连接不应该用using语句?该如何处理
  详细解决方案

杨中科老师错了?sql连接不应该用using语句?该如何处理

热度:8822   发布时间:2013-02-25 00:00:00.0
杨中科老师错了?sql连接不应该用using语句?
呵呵,基本肯定是我的理解有误,他高级讲师基本不可能在这犯错!!

我的理解是:
  用using语句块 每次都会执行 con.Database(), 这么写就没有连接池的概念了吧?每次都得重新new 一个SqlConnection 连接数据库,有效率太低了吧?
  我的理解是 Database()方法 是完全释放资源啊 Close()方法才是暂时关闭连接吧?
  我以前都是把 SqlConnection 当做一个类的字段来处理的 用完了Close()一下而已 
C# code
    class SqlHelper    {        private static readonly string connstr = ConfigurationManager.ConnectionStrings["lkfCon"].ConnectionString;        public int ExecuteNonQuery(string cmdText, params SqlParameter[] parameters)        {                        using (SqlConnection con = new SqlConnection(connstr))            {                con.Open();                using (SqlCommand cmd = con.CreateCommand())                {                    cmd.CommandText = cmdText;                    cmd.Parameters.AddRange(parameters);                    return cmd.ExecuteNonQuery();                }                              }        }    }


------解决方案--------------------------------------------------------
探讨
呵呵,基本肯定是我的理解有误,他高级讲师基本不可能在这犯错!!

我的理解是:
用using语句块 每次都会执行 con.Database(), 这么写就没有连接池的概念了吧?每次都得重新new 一个SqlConnection 连接数据库,有效率太低了吧?
我的理解是 Database()方法 是完全释放资源啊 Close()方法才是暂时关闭连接吧?
我以前都是把 ……
  相关解决方案