即刻完成你的asp.net程序(2)
三)数据分页
在asp中,很多朋友会为分页烦恼,现在,我们看看superdatagrid中怎样分页:
<%@ register tagprefix="super" namespace="superexpert.data"
assembly="superexpert.superdatagrid" %>
<form runat="server">
<super:superdatagrid
connectionstring="server=localhost;uid=sa;pwd=secret;database=pubs"
tablename="titles"
enablepaging="true"
pagesize="3"
pagerstyle-mode="numericpages"
runat="server" />
</form>
具体效果请看:
http://www.superexpertcontrols.com/superdatagrid/samples/sample4.aspx
我们来看看superdatagrid的几个新属性:
enablepaging:首先,我们当然要打开数据分页;
pagesize:和datagrid一样,每页数据显示的条数;
pagerstyle-mode:和datagrid一样,页码显示方式;
四)数据编辑
我们知道,在datagrid中,我们可以在直接编辑数据,但是,一般我们很少使用这样功能,因为这样编辑数据不是很方便也不是很实用,代码编写也比较多。现在,superdatagrid也提供这个功能,当然,我们不需要写那么多代码,只需要简单的设置就可以,其他,superdatagrid全部帮我们弄好了。
<%@ register tagprefix="super" namespace="superexpert.data"
assembly="superexpert.superdatagrid" %>
<form runat="server">
<super:superdatagrid
connectionstring="server=localhost;uid=sa;pwd=secret;database=northwind"
tablename="products"
enableediting="true"
enablepaging="true"
runat="server" />
</form>
具体效果请看:
http://www.superexpertcontrols.com/superdatagrid/samples/sample5.aspx
看以上代码,如果需要编辑数据,只要加enableediting属性就可以了。是不是特别简单?当然,我们仍然要将superdatagrid放在form中。
五)缓存
asp.net的缓存功能我们已经知道很强大,但是,具体到superdatagrid,你会发现它更加方便。使用superdatagrid的时候,会自动缓存已经显示过的数据来提高程序效率。设置缓存功能可以使用cachescope属性,我们可以设置缓存类型为application,,session和 none。
superdatagrid默认缓存类型为application,也就是所有用户共用缓存;如果采用session,缓存只针对特殊的用户;如果设置为none,那就是不要缓存功能。
默认的,缓存会保持30分钟,当然,我们可以使用cacheduration属性设置缓存时间,单位为分钟。
二、超级表单:superexpert dataform
刚才我们看到superdatagrid已经具有数据修改功能,但是,由于数据浏览和修改同时进行,实际上我们很少使用那种方式,更多的,我们还说采用单个记录修改。
以往我们在使用表单修改或者增加数据库数据的时候,需要作的工作很多,比如设置数据格式等,如果数据比较多,那更加繁琐。现在,使用superexpert dataform,我们可以简单的实现这些功能。
superexpert dataform可以自动保存或者修改数据库数据,还可以使用它自动从数据库生成表单(实际是浏览数据),我们甚至可以自定义样式来自动修改、更新数据库表。
一)从数据库自动生成表单
假设我们使用以下sql语句生成一个叫customersurveys的数据表:
create table customersurvey
(
customer_id int not null identity primary key,
customer varchar( 50 ) not null,
age int not null,
birthdate datetime not null,
comments text
)
这个数据表有customer_id、customer、 age、birthdate和comments五个字段。我们可以使用superexpert dataform自动生成一个表单,使用这个表单,我们可以直接向该数据表增加数据。
<%@ register tagprefix="super" namespace="superexpert.data"
assembly="superexpert.dataform" %>