public void Execute <TModel, TResult>(ProcPage <TModel, TResult> page) { foreach (ActionItem a in this.actions) { if (a.Sql != null) { page.WriteLiteral(a.Sql); } if (a.Result != null) { page.Write(a.Result(page.R)); } if (a.Model != null) { page.Write(a.Model(page.M)); } } }
public void Execute(ISqlPage page) { ProcPage <IRunnable, object> proc = (ProcPage <IRunnable, object>)page; foreach (ActionItem a in this.actions) { if (a.Sql != null) { proc.WriteLiteral(a.Sql); } if (a.Result != null) { proc.Write(a.Result(proc.R)); } if (a.Model != null) { proc.Write(a.Model(proc.M)); } } }
public DataTable PagingList(ref ProcPage pb) { try { SqlParameter[] sqlparametrs = new SqlParameter[] { new SqlParameter("@TableName", DbType.AnsiString), new SqlParameter("@Fields", DbType.AnsiString), new SqlParameter("@OrderField", DbType.AnsiString), new SqlParameter("@sqlWhere", DbType.AnsiString), new SqlParameter("@PageSize", DbType.Int32), new SqlParameter("@PageIndex", DbType.Int32), new SqlParameter("@TotalPage", DbType.Int32), new SqlParameter("@Counts", DbType.Int32), }; sqlparametrs[0].Value = pb.TableName; sqlparametrs[1].Value = pb.FieldNames; sqlparametrs[2].Value = pb.FieldSort; sqlparametrs[3].Value = pb.Condition; sqlparametrs[4].Value = pb.PageSize; sqlparametrs[5].Value = pb.Page; sqlparametrs[6].Direction = ParameterDirection.Output; sqlparametrs[7].Direction = ParameterDirection.Output; DataSet ds = ExecuteProcedure("up_Page_2005", sqlparametrs); if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows == null || ds.Tables[0].Rows.Count == 0) { return(null); } pb.PageCount = int.Parse(sqlparametrs[6].Value.ToString()); pb.Counts = int.Parse(sqlparametrs[7].Value.ToString()); return(ds.Tables[0]); } catch { return(null); } }