ObjectDataSource控件提供了两种方法对绑定到控件(比如GridView)的数据进行分页和排序:
- 通过用户界面进行分页,优点是容易设置,缺点是当数据量大时执行效率较低;
实现方法:
- 对GridView控件使用正确的数据源,比如:DataSet, Collection, DataTable或者DataView,但不能使用DataReader
- 在页面设置GridView控件分分页属性为True。AllowPaging="True"
- 通过设置ObjectDataSource的分页,优点是数据量大时执行效率较高,特别是如果配合Caching能极大的提高以数据驱动为主的网络应用程序的效率。
ObjectDataSource数据源的分页可以在类Class, 存储过程, LINQ to SQL查询中实现,下面以LINQ to SQL,Northwind数据库的Product表为例子来说明用法:
实例网站的文档结构如下图:
1、新建网页,添加LINQ to SQL Class,命名为Products,在Server Exploer中拖拽Northwind数据库的Product表到设计界面。
2、添加一个新类Class命名为roductsLINQPaging
3、类中实现的方法如下:
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Data.Linq;
5using System.Web;
6
7/// <summary>
8/// Summary description for ProductsLINQPaging
9/// </summary>
10public class ProductsLINQPaging
11{
12 public ProductsLINQPaging()
13 {
14 //
15 // TODO: Add constructor logic here
16 //
17
original link:
<a href='http://Apiaceae.github.io/blog/2009/03/13/ObjectDataSource%E6%8E%A7%E4%BB%B6%E7%9A%84%E5%88%86%E9%A1%B5%E3%80%81%E6%8E%92%E5%BA%8F%E5%92%8C%E7%AD%9B%E9%80%89/'>http://Apiaceae.github.io/blog/2009/03/13/ObjectDataSource%E6%8E%A7%E4%BB%B6%E7%9A%84%E5%88%86%E9%A1%B5%E3%80%81%E6%8E%92%E5%BA%8F%E5%92%8C%E7%AD%9B%E9%80%89/</a><br/>
written by <a href='http://Apiaceae.github.io'>Hooker</a>
posted at <a href='http://Apiaceae.github.io'>http://Apiaceae.github.io</a>
</p>