在oledbhelpdao.cs函数 中有一个子函数
/// <summary>
        /// 测试调用存储过程
        /// </summary>
        /// <param name="connectionString"></param>
        /// <param name="cmdType"></param>
        /// <param name="cmdText"></param>
        /// <param name="tableName"></param>
        /// <param name="commandParameters"></param>
        /// <returns></returns>
        public static DataSet ExecuteDataSet(string connectionString, CommandType cmdType, string cmdText, string tableName,params OleDbParameter[] commandParameters)
        {
            DataSet ds = new DataSet();
            
            using (OleDbConnection conn = new OleDbConnection(connectionString))
            {
                conn.Open();
                OleDbCommand cmd = new OleDbCommand( );
                using (OleDbDataAdapter da = new OleDbDataAdapter())
                {
                    PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                    da.SelectCommand = cmd;
                    da.Fill(ds, tableName);
                    cmd.Parameters.Clear();
                }
            }
            return ds ;
其中在da.Fill(ds, tableName);处出现 timeout exceeded的bug,这个bug有时候出现,有时候不出现,出现这个问题时把程序停止,重新运行又好了,不晓得是什么原因,跪求高手指教。在线等。C#存储数据库

解决方案 »

  1.   

    conn的连接时间设置为0(无限制)看看
      

  2.   

    这个存储过程是别的同事写的,我直接调用的。以前有个同事也是掉用的这个存储过程开发的,就没遇到过这种情况,只不过他是用asp.net开发的,我是用c#.net开发的。这个问题真是让人郁闷啊,我现在重新生成解决方案试一下,哎,看运行时间长了,还会不会出现这个问题。
      

  3.   

    请问如何把conn的连接时间设置为0呢?
      

  4.   

    如这位网友所言,在程序中设置一下conn的连接时间,但不是设置为0,我设置为conn.ConnectionTimeout=120了,加上这一句程序就好使了。