遇到的情况:所有sql语句、参数都是正确无误的,但是执行程序后会报错“ExecuteReader: CommandText 属性尚未初始化”。
百度、谷歌一下,并没有搜索到我这种出错情况....囧
经过第二轮代码复查,终于找到了问题所在,原来是storedProcName没有传存储过程的名称!太低级失误啦!
/// <summary>
        
/// 执行存储过程
        
/// </summary>
        
/// <param name="storedProcName">存储过程名</param>
        
/// <param name="parameters">存储过程参数</param>
        
/// <param name="tableName">DataSet结果中的表名</param>
        
/// <returns>DataSet</returns>
        public static DataSet RunProcedure(string storedProcName, IDataParameter[] parameters, string tableName)
        {
            SqlConnection connection 
= new SqlConnection(connectionString);
            DataSet dataSet 
= new DataSet();
            connection.Open();
            SqlDataAdapter sqlDA 
= new SqlDataAdapter();
            sqlDA.SelectCommand 
= BuildQueryCommand(connection, storedProcName, parameters);
            sqlDA.Fill(dataSet, tableName);
            sqlDA.Dispose();
            connection.Close();
            
return dataSet;
        }

相关文章:

  • 2021-07-08
  • 2022-12-23
  • 2021-09-17
  • 2021-12-03
  • 2022-12-23
  • 2022-12-23
  • 2021-10-21
  • 2021-10-15
猜你喜欢
  • 2022-12-23
  • 2022-02-25
  • 2022-12-23
  • 2021-11-28
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案