日期:2014-05-17  浏览次数:20516 次

困境【...出现这种情况可能是因为所有池连接均在使用...】
最近发现存在连接池超时的问题,看了半天毫无头绪,请各位高手指点,下面贴出重要代码
1、SqlDbHelper:操作SQL Server数据库的通用类
...

        /// <summary>
        /// 返回一个DataReader对象实例
        /// </summary>
        /// <param name="sql">要查询的SQL文本命令</param>
        /// <returns>DataReader对象实例</returns>
        public SqlDataReader ExecuteReader(string sql)
        {
            return ExecuteReader(sql, CommandType.Text, null);
        }
        
/// <summary>
        /// 返回一个DataReader对象实例
        /// </summary>
        /// <param name="sql">要查询的SQL文本命令</param>
        /// <param name="commandType">要执行的查询语句的类型,存储过程或SQL文本命令</param>
        /// <param name="parameters">T-SQL语句或存储过程的参数数组</param>
        /// <returns>DataReader对象实例</returns>
        public SqlDataReader ExecuteReader(string sql, CommandType commandType, SqlParameter[] parameters)
        {
            SqlConnection connection = new SqlConnection(connectionString);
            SqlCommand command = new SqlCommand(sql, connection);

            if (parameters != null)
            {
                foreach (SqlParameter parameter in parameters)
                {
                    command.Parameters.Add(parameter);
                }
            }
            connection.Open();
            //参数CommandBehavior.CloseConnection表示,关闭Reader对象的同时关闭Connection对象
            return command.ExecuteReader(CommandBehavior.CloseConnection);
        }



2、页面.aspx 代码

            <tr>
             <td class="lt-r">角色包含权限:</td>
                <td>