我改一个项目,其中有一个分页,分页的时候前面2页可以第三页时就报错了,找了许久不知原因
哪位帮忙看一下用户代码未处理 System.Data.SqlClient.SqlException
  Message="列名 'ID' 无效。"
  Source=".Net SqlClient Data Provider"
  ErrorCode=-2146232060
  Class=16
  LineNumber=1
  Number=207
  Procedure=""
  Server="192.168.0.16"
  State=1
  StackTrace:
       在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
       在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
       在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
       在 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
       在 System.Data.SqlClient.SqlDataReader.ConsumeMetaData()
       在 System.Data.SqlClient.SqlDataReader.get_MetaData()
       在 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
       在 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
       在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
       在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
       在 System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
       在 System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
       在 System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
       在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
       在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
       在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable)
       在 MediaInfo.DBUtility.SqlHelper.RunProcedure(String connectionString, String storedProcName, IDataParameter[] parameters, String tableName) 位置 E:\mediainfo\DBUtility\SqlHelper.cs:行号 573
       在 MediaInfo.DBUtility.SqlHelper.PageList(String connectionString, String tblName, String fldName, Int32 pageSize, Int32 pageIndex, String fldSort, Boolean Sort, String strCondition, String ID, Boolean Dist, Int32& pageCount, Int32& Counts, String& strSql) 位置 E:\mediainfo\DBUtility\SqlHelper.cs:行号 82
       在 MediaInfo.SQLServerDAL.CurrentPlayList.GetList(Int32 pageSize, Int32 pageIndex, String tabName, String flbName, String fldSort, Boolean sort, String strCondition, String id, Int32& pageCount, Int32& count, String duobiao) 位置 E:\mediainfo\SqlServerDAL\CurrentPlayList.cs:行号 205
       在 MediaInfo.BLL.CurrentPlayList.GetList(Int32 pageSize, Int32 pageIndex, String tabName, String flbName, String fldSort, Boolean sort, String strCondition, String ID, Int32& pageCount, Int32& count, String duoye) 位置 E:\mediainfo\BLL\CurrentPlayList.cs:行号 276
       在 ItemsDown.NewSubmit(Int32 pageIndex) 位置 e:\mediainfo\AdCraft\ItemsDown.aspx.cs:行号 87
       在 ItemsDown.TabProgramme_lbNextPage_Click(Object sender, EventArgs e) 位置 e:\mediainfo\AdCraft\ItemsDown.aspx.cs:行号 409
       在 System.Web.UI.WebControls.LinkButton.OnClick(EventArgs e)
       在 System.Web.UI.WebControls.LinkButton.RaisePostBackEvent(String eventArgument)
       在 System.Web.UI.WebControls.LinkButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
       在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
       在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
       在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
  InnerException: 

解决方案 »

  1.   


     /// <summary>
            /// 执行存储过程
            /// </summary>
            /// <param name="storedProcName">存储过程名</param>
            /// <param name="parameters">存储过程参数</param>
            /// <param name="tableName">DataSet结果中的表名</param>
            /// <returns>DataSet</returns>
            public static DataSet RunProcedure(string connectionString, string storedProcName, IDataParameter[] parameters, string tableName)
            {
                using (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);
                    connection.Close();
                    return dataSet;
                }
            }
      

  2.   

    在“sqlDA.Fill(dataSet, tableName);”时报错
      

  3.   

    单步跟踪查看字符串
    aspnetpager分页控件不错,还有分页存储过程