在三层中,用到了访问存储过程的技术,但是里边的参数我不知道什么意思,谁能解释一下
/// <summary>
        /// 分页查询
        /// </summary>
        /// <param name="ShowFiled">要显示的字段</param>
        /// <param name="PageSize">每页多少行</param>
        /// <param name="PageIndex">当前页</param>
        /// <param name="strWhere">查询条件</param>
        /// <param name="FiledOrder">排序类型</param>
        /// <returns></returns>
        public DataSet GetList(string ShowFiled, int PageSize, int PageIndex, string strWhere, string FiledOrder)
        {
            SqlParameter[] parameters = {
new SqlParameter("@tbname", SqlDbType.VarChar, 255),
new SqlParameter("@FieldKey", SqlDbType.VarChar, 1000),
new SqlParameter("@PageSize", SqlDbType.Int),
                    new SqlParameter("@PageCurrent", SqlDbType.Int),
new SqlParameter("@FieldShow", SqlDbType.NVarChar,1000),
new SqlParameter("@FieldOrder", SqlDbType.NVarChar,1000),
new SqlParameter("@Where", SqlDbType.VarChar,1000),
                    new SqlParameter("@PageCount",SqlDbType.Int)
};
            parameters[0].Value = TableName;
            parameters[1].Value = TableID;
            parameters[2].Value = PageSize;
            parameters[3].Value = PageIndex;
            parameters[4].Value = ShowFiled;
            parameters[5].Value = FiledOrder;
            parameters[6].Value = strWhere;
            parameters[7].Value = 1;
            return DbHelperSQL.RunProcedure("Proc_System_ListPage", parameters, "ds");
特别是最后  return DbHelperSQL.RunProcedure("Proc_System_ListPage", parameters, "ds");每个参数什么作用和意思。如果有时间帮我整个解释一下,不胜感激

解决方案 »

  1.   

    return DbHelperSQL.RunProcedure("Proc_System_ListPage", parameters, "ds");
    ==
    Proc_System_ListPage:存储过程名称
    parameters:参数
    ds:dataset
      

  2.   

    是不是parameters数组里的参数:SqlParameter[] parameters = {
    new SqlParameter("@tbname", SqlDbType.VarChar, 255),
    new SqlParameter("@FieldKey", SqlDbType.VarChar, 1000), 
    new SqlParameter("@PageSize", SqlDbType.Int),
      new SqlParameter("@PageCurrent", SqlDbType.Int),
    new SqlParameter("@FieldShow", SqlDbType.NVarChar,1000),
    new SqlParameter("@FieldOrder", SqlDbType.NVarChar,1000),
    new SqlParameter("@Where", SqlDbType.VarChar,1000),
      new SqlParameter("@PageCount",SqlDbType.Int)
    };
    和自己定义的存储过程里的参数是一一对应的?
    谢谢啊
      

  3.   

    return int.Parse(DbHelperSQL.RunProceValues("Proc_System_ListPage", parameters).Parameters["@PageCount"].Value.ToString());
    这段代码和上边有什么区别/
      

  4.   


    public DataSet GetList(string ShowFiled, int PageSize, int PageIndex, string strWhere, string FiledOrder)//函数返回一个dataset,参数ShowFiled,PageSize,PageIndex,strWhere,FiledOrder
      {
      SqlParameter[] parameters = {
    new SqlParameter("@tbname", SqlDbType.VarChar, 255),
    new SqlParameter("@FieldKey", SqlDbType.VarChar, 1000), 
    new SqlParameter("@PageSize", SqlDbType.Int),
      new SqlParameter("@PageCurrent", SqlDbType.Int),
    new SqlParameter("@FieldShow", SqlDbType.NVarChar,1000),
    new SqlParameter("@FieldOrder", SqlDbType.NVarChar,1000),
    new SqlParameter("@Where", SqlDbType.VarChar,1000),
      new SqlParameter("@PageCount",SqlDbType.Int)
    };//声明参数数组对应的值类型
      parameters[0].Value = TableName;//为参数赋值
      parameters[1].Value = TableID;
      parameters[2].Value = PageSize;
      parameters[3].Value = PageIndex;
      parameters[4].Value = ShowFiled;
      parameters[5].Value = FiledOrder;
      parameters[6].Value = strWhere;
      parameters[7].Value = 1;
      return DbHelperSQL.RunProcedure("Proc_System_ListPage", parameters, "ds");
      //执行DbHelperSQL类的RunProcedure方法,这个方法返回一个dataset。DbHelperSQL.RunProcedure("Proc_System_ListPage", parameters, "ds");
    你可以去看看这个方法里面写的是什么,估计就是一个SQL查询。这是个分页查询的存储过程
      

  5.   

    你这个是返回一个INT值,而上面的要求返回一个dataset。
      

  6.   

    什么时候需要返回值 或者dataset?
      

  7.   

    你需要函数反馈给你结果的时候,就需要返回值了。如果返回的结果是一个集合,可以用Dataset,List等等,如果是一个单一的结果,可以用int,bool,string