【文件属性】:
文件名称:对象的排序-python3+opencv3识别图片中的物体并截取的方法
文件大小:10.59MB
文件格式:PDF
更新时间:2024-07-30 07:09:00
.net之美 关键技术解析
4.2 对象的排序
在上一节中,我们讨论了如何实现Predicate(T object)委托,自定义DateFilter类来
对业务对象进行筛选。与筛选一样,排序也是常见且重要的操作。在对业务对象进行排序
时,不能使用ObjectDataSource作为数据源,因为它只支持对DataView、DataTable和
DataSet的自动排序。但仍可以对GridView编写Sorting事件的处理方法,通过拼装SQL语
句,使用"Order By"子句来完成排序。
和进行筛选的思路一样,如果我们将业务对象缓存在服务器上,第一次访问时从数据库
提取数据,然后进行缓存,后继的请求只针对缓存了的业务对象进行,这样可以降低对数据
库的依赖,提高效率。本节将讨论如何对获取的业务对象进行排序,包括简单排序、任意列
排序及多列复合排序。
4.2.1 简单排序—对固定属性的默认排序
与4.1节不同,我不再说明使用拼装SQL来完成排序的方式,我们直接看基于
List对象的排序。我们知道List提供了Sort()方法来进行排序操作,那么它又如
何使用呢?我们先创建一个ObjSort.aspx文件,然后在页面后置代码ObjSort.aspx.cs中添加
如下代码:
protected void Page_Load(object sender, EventArgs e)
{
Label lb1 = new Label();
List list = new List();
list.Add(4);
list.Add(5);
list.Add(2);
list.Add(9);
list.Add(1);
foreach (int item in list) {
lb1.Text += item.ToString() + ", ";
}
form1.Controls.Add(lb1);
HtmlGenericControlhr = new HtmlGenericControl("hr");
form1.Controls.Add(hr);