AspNetPage 使用案例

第一次写博客,今天学习了AspNetPage第三方的分页控件,老师讲的有点迷糊,不过还能听懂,项目是三层架构写的,
大神们就别鄙视我了。。我就是想分享下。。也为我所学知识总结下,学了一天了,好累好累。。世界晚安~

UI
DAL
BLL


1
1.首先在DBHelper创建一个方法,用于执行存储过程 2     public static DataTable ExecuteProc(string sql,params SqlParameter[] param) 3 { 4 try 5 { 6 SqlCommand com = new SqlCommand(sql,con); 7 com.CommandType = CommandType.StoredProcedure;
8 com.Parameters.AddRange(param); 9 SqlDataAdapter sda = new SqlDataAdapter(com); 10 DataSet ds = new DataSet(); 11 sda.Fill(ds); 12 return ds.Tables[0]; 13 14 } 15 catch (Exception es) 16 { 17 18 throw es; 19 } 20 21 } 22 2.在DStudentInfo创建一个方法用于传参 23   public DataTable GetPage(int pageSize, int currentPage) 24 { 25 try 26 { 27 SqlParameter p1 = new SqlParameter("@pageSize",pageSize); 28 SqlParameter p2 = new SqlParameter("@currentPage",currentPage); 29 return DBHelper.ExecuteProc("proc_page",p1,p2); 30 } 31 catch (Exception) 32 { 33 34 throw; 35 } 36 } 37 3.在BStudentInfo创建一个相同的方法 38 39   public DataTable GetPage(int pageSize, int currentPage) 40 { 41 return ds.GetPage(pageSize,currentPage); 42 } 43 44 4.在UI层创建一个方法获取数据总个数,每页显示的个数 45   private void SetPageCount() 46 { 47 AspNetPager1.RecordCount = new BStudentInfo().GetSutdentInfoCount(); 48 AspNetPager1.PageSize = 5; 49 } 50 5.在UI层创建一个方法用于加载时间 51   private void DataLoad() 52 { 53 int pageSize = AspNetPager1.PageSize; 54 int currentPage = AspNetPager1.CurrentPageIndex; 55 Repeater1.DataSource = new BStudentInfo().GetPage(pageSize,currentPage); 56 Repeater1.DataBind(); 57 } 58 6.在ASPNETPAGE事件写入加载事件 59   protected void AspNetPager1_PageChanged(object sender, EventArgs e) 60 { 61 DataLoad(); 62 } 63 64 7.页面加载事件
65   protected void Page_Load(object sender, EventArgs e) 66 { 67 if (!IsPostBack) 68 { 69 SetPageCount(); 70 DataLoad(); 71 72 } 73 } 74 75

 

你可能感兴趣的:(page)