在这篇博文中,我们会用到jquery 分页插件pagination,vici 自带了调用ajax的方法,我们抛弃以前用控件的习惯,来自己写一个分页后台。
首先我来讲一下这个分页插件:
参数:
参数名 | 描述 | 参数值 |
---|---|---|
maxentries | 总条目数 | 必选参数,整数 |
items_per_page | 每页显示的条目数 | 可选参数,默认是10 |
num_display_entries | 连续分页主体部分显示的分页条目数 | 可选参数,默认是10 |
current_page | 当前选中的页面 | 可选参数,默认是0,表示第1页 |
num_edge_entries | 两侧显示的首尾分页的条目数 | 可选参数,默认是0 |
link_to | 分页的链接 | 字符串,可选参数,默认是"#" |
prev_text | “前一页”分页按钮上显示的文字 | 字符串参数,可选,默认是"Prev" |
next_text | “下一页”分页按钮上显示的文字 | 字符串参数,可选,默认是"Next" |
ellipse_text | 省略的页数用什么文字表示 | 可选字符串参数,默认是"…" |
prev_show_always | 是否显示“前一页”分页按钮 | 布尔型,可选参数,默认为true,即显示“前一页”按钮 |
next_show_always | 是否显示“下一页”分页按钮 | 布尔型,可选参数,默认为true,即显示“下一页”按钮 |
callback | 回调函数 | 默认无执行效果 |
下面我建一个htm,在VICI就是模版文件
例如:recommend.htm
对应的我们要在Controller中建立一个同名的控制器
例如:recommend.cs
mvc的优点就是代码的一致性和重用性高,我为了简化代码量编写了,数据库交互类,这里边叫DBhelper,和数据层调用类DataServer,在控制器类中我们要调用DataServer类中一些方法,如下:
其中又要调用DBhelper(这个类中我只写俩个方法,一个用来提取信息,返回值是DataSet,就是下面看到的这个,一个用来进行增删改查,返回值是布尔值,这俩个方法在任何项目中均可重复使用)类中的方法,如下:
这样方法和代码就都贴全了。
我当年写的时候都是在用控件,可是微软的控件都是服务器型的,我们如果都默认使用,岂不是很吃内存,再者,当年写程序,前后台一个人,光痛苦不说,还费力不讨好,整出来的东西不人不鬼,自己都觉得很囧。实现前后台分开写,由不同的人去完成,大家擅长做什么就做什么,是最好的方法。所以我找到了VICI,并且尽自己的力量翻译这些教材,对我个人,对大家都是一种帮助。
下面再来说说分页的思想,分页控件pagination已经给我们提供了样式,我们只需要关心的是当我们点击某一页数的时候他们要根据具体的页数去和数据库交互,这么交互了?写sql 语句可以,我在例子中也是这么写的。我一开始尝试用PagedDataSource来实现,后来失败了,如果各位有更好的方法,希望联系我,向各位学习了。